2013-02-07 18 views
0

更新后,我需要替换ko阵列中的项目。 问题是与替换功能,我需要有旧的项目。在淘汰赛阵列中替换项目

这里是我的功能:

self.saveMarket = function (market) { 
    var item = ko.toJS(market); 

    $.ajax({ 
     type: (item.MarketId != "" ? 'PUT' : 'POST'), 
     url: url + (item.MarketId != "" ? '?id=' + item.MarketId : ''), 
     data: item, 
     success: function (data) { 
      self.Markets.push(market); 
      self.showList(); 
     }, 
     error: function (err) { 
      alert(err); 
     }, 
    }); 
} 

这应该同时处理插入和更新。 插入工程与推(市场),但如果我做了更新,我怎么能替换旧的项目与新?

感谢咨询

回答

1

您可能必须通过(使用ko.utils.arrayForEach或$。每次)你观察到的数组进行迭代,找到匹配的marketid的项目,请从数组元素,然后推新的一个。