Javascript 使用click-in knockout js高亮显示行,并将数据传递给新数组

Javascript 使用click-in knockout js高亮显示行,并将数据传递给新数组,javascript,knockout.js,Javascript,Knockout.js,我有一个web服务,它将客户列表与其他数据一起传递。我希望能够点击多个客户,将他们添加到我将在其他地方使用的阵列中。再次单击它们将从阵列中删除它们 在某些方面与此解决方案类似: 如果有人能解释计算值与之相比是什么,以及它是如何工作的,我想我可以自己得到其余的: self.isSelected = ko.computed(function() { return selected() === self; }); 您需要的是设置一个可观察属性,并在值更改时从数组中添

我有一个web服务,它将客户列表与其他数据一起传递。我希望能够点击多个客户,将他们添加到我将在其他地方使用的阵列中。再次单击它们将从阵列中删除它们

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

如果有人能解释计算值与之相比是什么,以及它是如何工作的,我想我可以自己得到其余的:

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

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

并将onClick事件更新为:

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