0

MS CRM 2016 の編集可能なグリッドに取り組んでいます。CRM システムからレコードを取得し、generateTable() 関数で動的に作成されるテーブルに表示する HTML Web リソースを作成しました。これには少し時間がかかる可能性があり、generateTable() 関数が実行している間に gif の読み込みを表示したいと考えています。新しいレコードの取得、削除、更新、および作成に XrmServiceToolkit を使用しています。

loadingScreen() 関数は、テーブルを含む div を非表示にし、その中に gif 画像を含む div を表示します... stopLoadingScreen() は反対のことを行います。

私のコードは次のようになりますが、読み込み中の gif がまったく表示されません...

function onLoad(){
            loadingScreen();
            try{
                generateTable();
            }
            catch(err){
                alert(err.toString());
            } finally {
                stopLoadingScreen();
            }
        }

私が見逃しているものはありますか?これに対する解決策はありますか(おそらくjQueryまたはsmthを使用)?

4

1 に答える 1

0

generateTable() が非同期関数であると仮定すると、loadingScreen 関数と stopLoadingScreen 関数が立て続けに呼び出されるため、アニメーション GIF が実際に表示されることはありません。

もし生成テーブル(); 関数は、レコードを取得するために XrmServiceToolkit メソッドを使用しているものです。あなたの stopLoadingScreen(); 関数はコールバック内にある必要があり、generateTable 関数内で try キャッチを処理します。

function onLoad() {
  loadingScreen();
  generateTable(function() {
      stopLoadingScreen();
  });
}
于 2016-06-08T16:27:13.823 に答える