首页 文章

Knockout取消了jQuery UI对话框的更新

提问于
浏览
0

我有父模型 person . 视图模型具有 person 的可观察数组 . 要编辑/添加一个人,我有一个jQuery UI对话框(确定/取消) .

var viewModel = function(){
    var self = this;
    self.personEntry = ko.observable(new person());
    self.people = ko.observableArray();
    self.populatePeople = function(jsonPeopleObj){//adds person objects to people array};
};

personEntry 子模型使用 with 绑定绑定到jQuery UI对话框 . 使用 people observable数组上的 foreach 绑定生成表 .

现在当我尝试修改记录时,我在点击该行时调用以下函数 .

function rowSelected(item,event){
    viewModel.personEntry(item);
    openDialog();
}

这将在jQuery UI对话框中打开包含所选行详细信息的对话框 . 但是,如果我更改一个值,然后按对话框上的取消,表格仍然会修改一个不应该发生的新值 . 有什么想法吗?

如果需要,我可以提供示例代码 .

1 回答

  • 0

    我通过一些工作来解决这个问题......

    https://jsfiddle.net/ramkiFiddle/v29exev5/59/

    self.amendDetails = function(item, event) {
        itemProgressed = item;
        operation = 'Amend';
        var tempObj = new Person(item.Name(), item.Age());
        pageModel.personEntry(tempObj);
        $("#personEntry").dialog('open');
      }
    

相关问题