0

我有一个剑道 Obervable 如下:

var ViewModel = kendo.observable({
     ID: 1,
     TITLE: "SomeValue",
});

然后我将其绑定如下:

kendo.bind($(".bind-view"), ViewModel );

现在页面上有按钮。单击时,我需要检查是否对此进行了任何更改ViewModel

我努力了

    $(".ClearAnalysisInfo").on('click', function (event) { 
         ViewModel.bind("change", function (e) {
         //Some code
      });
  });

但是无论它是否改变,我都无法获得这个 ViewModel 属性。

4

1 回答 1

1

在按钮的处理程序中绑定 ObservableObject 的change事件click为时已晚。您需要在创建 ObservableObject 后立即执行此操作。

change处理程序中,您将收到有关已更改字段的信息。使用此信息来引发一些 JavaScript 标志或保存您需要的详细信息,以便稍后在按钮的click处理程序中使用它们。

var viewModelChanged = false;

var ViewModel = kendo.observable({
    ID: 1,
    TITLE: "SomeValue",
});

ViewModel.bind("change", function (e) {
    viewModelChanged = true;
});

$(".ClearAnalysisInfo").on('click', function (event) { 
    if (viewModelChanged) {
        // ...
    }
});
于 2016-09-07T14:35:33.163 回答