如何在动态选择的选项中检查每个结果的运行函数。目前https://jsfiddle.net/7sx1jyg3/3有我的表格的代码,其中包含一些随机填充“结果”
单击generate时我需要获取的信息是所选每个实例的复选框的值。目前使用代码我有每个复选框的值是数据库中实例的ID,这是我正确生成PDF所需的信息。 jsfiddle中与此问题最相关的代码如下:
每个选定的项目都会被添加到queuedValues可观察数组中,而generate函数是我单击生成按钮时要运行的函数,这样我就可以完成url信息的功能,所以checkedValue将被设置为每个选定的结果
DbCommandBuilder.QuoteSuffix
答案 0 :(得分:0)
以下是using the checked
binding with an array的一个简单示例。
要拥有包含所选行的id
的数组,请在父对象中创建数组,而不是在每行中创建数组。在复选框中,将checked
绑定到数组(使用$parent
,因为您位于foreach
范围内)。将value
绑定到id
。
当您选中一个方框时,id
将被添加到数组中;取消选中某个框后,id
将从阵列中删除。
vm = {
rows: [{
id: 1,
name: 'First'
}, {
id: 2,
name: 'Second'
}, {
id: 3,
name: 'Third'
}],
selectedIds: ko.observableArray([])
};
ko.applyBindings(vm);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<table>
<tbody data-bind="foreach: rows">
<tr>
<td>
<input type="checkbox" data-bind="checked: $parent.selectedIds, value: id">
</td>
<td data-bind="text:name"></td>
</tr>
</tbody>
</table>
<div data-bind="text: JSON.stringify(selectedIds())"></div>