【发布时间】:2013-08-05 20:06:51
【问题描述】:
我是一般的编程新手,但尤其是淘汰赛。我有一个使用 foreach 绑定填充的表。在这个表中,我有一列我想成为一个复选框,它的选中值是从通过 ajax 检索的 mysql 数据库值填充的。我知道选中的绑定应该能够取 0 或 1 并松散地转换为选中和未选中。
http://knockoutjs.com/documentation/checked-binding.html
对于复选框,KO 将设置要检查的元素,当 参数值为真,为假时不勾选。如果你给 一个实际上不是布尔值的值,它将被松散地解释。 这意味着非零数和非空对象和非空 字符串都将被解释为真,而零、空、 未定义,空字符串将被解释为假。
假设这是我的 ko.observableArray 命名部分:
{"id":"1","partdes":"asdf","partcost":"1.00","sellcost":"2.00","tax":"1"}
我的桌子上有这个代码 sn-p:
<tbody data-bind="foreach: parts">
<tr>
<td data-bind="text: id"></td>
<td data-bind="text: partdes"></td>
<td data-bind="text: partcost"></td>
<td data-bind="text: sellcost"></td>
<td><input type="checkbox" data-bind="checked: tax" /></td>
//And I added this line to get the actual value:
<td data-bind="text: tax"></td>
</tr>
</tbody>
一切正常,除了复选框总是被选中,即使值为 0。为什么这不起作用?
【问题讨论】:
标签: knockout.js