0

シナリオ: Kendo UI MVVM を使用して、JSON ファイルのレコードをグリッドにバインドしています。編集可能なプロパティをポップアップに設定したため、レコードを編集するとポップアップが開きますが、データを変更して更新すると、レコードは更新されません。したがって、ポップアップを閉じるには、[キャンセル] ボタンをクリックします。

いくつかの調査の後、保存機能に出会いました。グリッド内のレコードを更新します。

質問 : MVVM シナリオで保存機能を定義するにはどうすればよいですか?? 通常、保存機能はグリッドで次のように定義されます。

$("#myGridView").kendoGrid({
    //...
    save:function(){
        this.refresh
    }
)}; 

上記は、非 MVVM 標準でうまく機能します。同じことをMVVMの方法で行うにはどうすればよいですか?

var viewModel = kendo.observable({
    dataSource:new kendo.data.DataSource({
        //...
    }),
    save:function(){
        //how to implement the same refresh functionality?
    }
});

saveのところ、グリッドにイベントを添付しましたevents: { save: save }save関数が呼び出されますが、ポップアップで「更新」をクリックしても何も起こりません。firebugではthis.refresh、関数ではないと言っています。

どこが間違っていますか??

親切に私を助けてください。

4

1 に答える 1

0

thisここでは同じではありません...グリッドを更新したい場合は、次のように書く必要があると思います:

save : function() {
    $("#myGridView").data("kendoGrid").refresh();
}
于 2013-04-12T12:52:53.203 に答える