Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用ko.utils.arrayForEach在通过敲除foreach绑定生成的表中选择复选框_Jquery_Knockout.js - Fatal编程技术网

Jquery 使用ko.utils.arrayForEach在通过敲除foreach绑定生成的表中选择复选框

Jquery 使用ko.utils.arrayForEach在通过敲除foreach绑定生成的表中选择复选框,jquery,knockout.js,Jquery,Knockout.js,在以下代码的帮助下,我使用knockout-foreach绑定生成一个表: <tbody data-bind="foreach: queryData"> <tr> <td><input type="checkbox" data-bind="checked: isChecked" /></td> <td data-bind="text: id"></td> <td data-bind="text: EN"&g

在以下代码的帮助下,我使用knockout-foreach绑定生成一个表:

<tbody data-bind="foreach: queryData">
<tr>
<td><input type="checkbox" data-bind="checked: isChecked" /></td>
<td data-bind="text: id"></td>
<td data-bind="text: EN"></td>
<td data-bind="text: CN"></td>
<td data-bind="text: PN"></td>
</tr>
</tbody>
this.selectAll = function(){
ko.utils.arrayForEach(self.queryData(),function(items){
self.isChecked(true);
});
};
我定义了以下观察值:

this.queryData= ko.observableArray();
this.isChecked = ko.observable();
加载完完整的表格后,我需要一个选项,在ko.utils.arrayForEach的帮助下,使用以下代码选择表格中的所有复选框:

<tbody data-bind="foreach: queryData">
<tr>
<td><input type="checkbox" data-bind="checked: isChecked" /></td>
<td data-bind="text: id"></td>
<td data-bind="text: EN"></td>
<td data-bind="text: CN"></td>
<td data-bind="text: PN"></td>
</tr>
</tbody>
this.selectAll = function(){
ko.utils.arrayForEach(self.queryData(),function(items){
self.isChecked(true);
});
};

我知道在queryData observable数组中没有定义isChecked,但我确实希望对queryData中的所有项运行循环,并将isChecked设置为true。

您需要执行类似的操作

this.selectAll = function(){
ko.utils.arrayForEach(self.queryData(),function(items){
items.isChecked(true); // `items` instead of `self` because you are looping here
});
};
按你的要求检查


最好的方法是使用类似于读/写的computed,你有什么问题吗?还不完全清楚您想要实现什么。@JeffMercado我正在尝试实现一个“选择所有行”功能,该功能应该为使用服务器数据的knockout foreach绑定生成的表中的每一行设置以下值: