2013-02-07 34 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的項目,請從數組元素,然後推新的一個。