Jquery 循环检查复选框并获取数据

Jquery 循环检查复选框并获取数据,jquery,knockout.js,Jquery,Knockout.js,这是我上一个问题的继续 您可以看到,当页面加载时,它将显示2个选定项目,即列表中的2个和3个。现在,当我选中选项Test1时,它没有被添加到列表中。简而言之,它不会在列表中添加新选择的项目。我已经完成了以下步骤,以循环选择的项目 viewModel.selectedItems = ko.computed(function() { debugger; return ko.utils.arrayMap(viewModel.checkDuplicate(), function(id) {

这是我上一个问题的继续

您可以看到,当页面加载时,它将显示2个选定项目,即列表中的2个和3个。现在,当我选中选项Test1时,它没有被添加到列表中。简而言之,它不会在列表中添加新选择的项目。我已经完成了以下步骤,以循环选择的项目

viewModel.selectedItems = ko.computed(function() {
debugger;
    return ko.utils.arrayMap(viewModel.checkDuplicate(), function(id) {
        return ko.utils.arrayFirst(viewModel.dataOne(), function(item) {
            return item.name1 == id; 
        }); 
    });
});   
我竖起了小提琴,所以它很容易理解。暂时忘记更新按钮吧。当我选中一些复选框时,它应该只显示那些在更新按钮下面的列表中选中的复选框。请帮忙

现在,当我选中选项Test1时,它没有被添加到列表中。简而言之,它不会在列表中添加新选择的项目

我创建了一个提琴,其中列表根据复选框的选中/取消选中进行更新。检查这个

视图模型

如果有帮助,请告诉我

已更新


.

你能编辑我的小提琴吗。您正在运行时创建复选框。我对淘汰赛不太自信。因此,如果您编辑我的小提琴,这将非常有帮助。我没有做任何不同的事情,基于
复选框创建的复选框可观察到数组条目
,在您的情况下,您也在做同样的事情,您的复选框是用
dataone observableArray enrties
创建的。请您修改我的小提琴。我尝试过,但不确定如何使用Isselected。请参见更新的FIDLE,IsSelected属性应与每个复选框对象关联,因此无论何时选中或取消选中任何复选框,其关联属性IsSelected都将更新。
function VM() {
    var self = this;   

    self.Checkboxes = ko.observableArray([
        new Checkbox("one", 1, "Test1"),
        new Checkbox("two", 2, "Test2", true),
        new Checkbox("three", 3, "Test3", true)
    ]);

    self.SelectedItems = ko.computed(function(){
        var boxes = [];
        ko.utils.arrayForEach(self.Checkboxes(), function(box){
            if(box.IsSelected()){
              boxes.push(box);
            }
        });
        return boxes;
    });
}