2016-07-22 4 views
0

私の.ts(.js)ファイルにクリックイベントがあります。ユーザーがクリックすると、データを取得するためにajax呼び出しを行っています。成功すると、このデータをバインドして動的剣道グリッドを作成します(グリッドの数はデータに応じて変わります)。文書のコードの一部をどのように実行する準備ができていますか?

私はいくつかのコードを実行したいです。しかし、このコードを実行する時点では、特定のグリッドは利用できません。利用可能なグリッドまで待ってからこのコードを実行する方法?同じクリックイベントで準備されたjqueryドキュメントが機能していません。

$(chkBox).click(() => { 
      var chk = $(event.target); 
      var val = chk.val(); 
      if (chk.prop("checked")) { 
       // code removed for bravity          
       proxyEle.getData(myObject).done(result => { 
       // this div has partial view which binds data from result. 
        $(divGrids).html(<string>result); // this part creates kendo grids dynamcially based on data. 

        // here I want to execute my code on the grid elements 
        //but this code is executing before grid creation is complete. 
        //So my code is not working. Why here? My grid ids are 
        // like "SomeConstName"+chk.val(); this val() I only get here. 

       }).fail(error => { 
        // handle error 
       }); 
       } 
       } 

なぜ私のコードを実行しますか?グリッドIDを "ConstGridName" + chk.value()として使用しているためです。

このId値は上記のコードになっています。だからこそ私のコードを実行したいのです。どのようにすべてのグリッドが準備ができるまで私のコードの実行を遅らせる?

答えて

0

グリッドが完了している(とバインドさ)ときを知るための唯一の方法は、(グリッドはデータで満たされたときに発生)データバインドイベント

.Events(ev => ev.DataBound("onGridDataBound")) 
あり

あなたのコードを実行することができますを購読することです。

関連する問題