gpt4 book ai didi

javascript - 在 knockout js 中通过单击突出显示行,并将数据传递到新数组

转载 作者:行者123 更新时间:2023-11-29 17:17:05 26 4
gpt4 key购买 nike

我有一个 Web 服务,可以传递包含其他数据的客户列表。我希望能够点击多个客户,将他们添加到我将在其他地方使用的数组中。再次点击它们会将它们从数组中移除。

在某些方面与此解决方案类似:

Highlight selected row using knockout

如果有人可以解释计算值与什么进行比较以及它是如何工作的,我想我可以自己搞定其余部分:

self.isSelected = ko.computed(function() {
return selected() === self;
});

http://jsfiddle.net/6FCEe/33/

最佳答案

您需要的是设置一个可观察的属性并在值更改时从数组中添加/删除。或者只是检查在任何时间点选择了哪一个。让我在 jsfiddle 中创建一个示例:http://jsfiddle.net/6FCEe/55/

Thing = function(id, name, selected) {

var self = this;
self.ID = id,
self.Name = name,
self.isSelected = ko.observable(false);
self.isSelected.subscribe(function (selected){
if (selected){
// Add to array
} else {
// Remove from array
}
});
};

并将 onClick 事件更新为:

self.selectThing = function(item) {
item.isSelected(!item.isSelected());
};

关于javascript - 在 knockout js 中通过单击突出显示行,并将数据传递到新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16613579/

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