我正在尝试一个带有“保存”和“取消”按钮的简单剑道 ui 表单。我正在使用 Kendo.Observable 将数据绑定到表单。我想要实现的功能是,如果单击“保存”按钮,将保存表单数据。否则,如果单击“取消”,表单将返回只读模式,并显示先前的数据。为此,我首先在单击更新按钮时将模型数据保存在“原始值”属性中。如果单击“取消”,则“字段”模型数据将恢复为“原始值”。但问题是 , 'originalvalue' 不包含原始值。当用户在“保存”期间进行编辑时,它会更新。问题是 - 我如何保留原始模型数据以便在取消时可以刷新?请在代码下方找到。感谢您的帮助,谢谢。
<script type="text/javascript">
var viewModel = kendo.observable ({
updated: false,
originalvalue: {},
update: function(e) {
var original = this.get("fields");
this.set("originalvalue", original);
this.set("updated", true);
},
save: function(e) {
e.preventDefault();
if (validator.validate()) {
// make an ajax call to save this data
this.set("updated", false);
}
},
cancel: function(e) {
var original = this.get("originalvalue");
validator.destroy();
this.set("fields", original);
this.set("updated", false);
},
fields: {}
});
viewModel.set("fields", formArray);
kendo.bind($("#outerForm"), viewModel);
// prepare the validator
var validator = $("#outerForm").kendoValidator().data("kendoValidator");