更换挖空阵列中的项目

时间:2013-02-07 21:23:30

标签: knockout.js

更新后我需要替换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 个答案:

答案 0 :(得分:1)

您可能必须遍历可观察数组(使用ko.utils.arrayForEach或$ .each),找到具有匹配市场的项目,从数组中删除该元素,然后推送新元素。