gpt4 book ai didi

javascript - ajax成功后如何修改json数据?

转载 作者:行者123 更新时间:2023-12-03 11:31:10 26 4
gpt4 key购买 nike

我已经为此苦苦挣扎了一段时间,尝试了许多不同的不成功的方法。我将省去您我尝试过的所有尝试,并向您展示我正在使用的内容。看起来像这样..

// Retrieve unique list of items
self.items= ko.observableArray([]);
$.ajax({
url: self.options.itemsURL,
data: {},
dataType: "json",
success: function (data) {
data = data || {};
self.items(data);
self.items.unshift({"packet": "All","checked": "true"});
}
});

成功后,数据似乎被传递到 self.items 数组中。然后,将一个新元素添加到名为“All”的数组顶部。

这对于为我生成带有复选框的项目列表效果很好。但是,我需要能够监视和访问数据,以了解何时有人选中了复选框、选中了哪些复选框,并在需要时修改这些复选框的值。默认情况下,选中“全部”选择​​。如果有人选中另一个框,我希望“全部”框变为未选中状态。到目前为止,我在监视这些数组的所有尝试中都没有成功,但我不太了解这种编程风格。有人能为我指出解决这个问题的正确方向吗?

谢谢

最佳答案

您的问题是, knockout 可观察数组跟踪数组中的对象,而不是这些对象的状态( documentation )。

不要将普通的 JavaScript 对象传递到 observable 数组中,而是从这些对象创建 observables 并将它们传递给数组。然后您将能够观察对象状态的任何变化...

关于javascript - ajax成功后如何修改json数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26725038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com