我正在尝试从viewModel中的布尔值创建一个隐藏的表单字段。
<tbody data-bind="foreach: MediaFiles">
<tr>
<td>
<input type="hidden"
data-bind="attr: { value: MyBool }" />
</td>
</tr>
</tbody>
我需要根据视图模型中的内容将输入值设置为“true”或“false”。为清楚起见,省略了其他属性。
使用knockout的绑定功能实现这一目标的最佳方法是什么?
答案 0 :(得分:18)
data-bind="attr: { value: MyBool ? 'true' : 'false' }"
或MyBool是一个可观察的:
data-bind="attr: { value: MyBool() ? 'true' : 'false' }"
或者您可以使用computed observable:
MyBool = ko.computed(function(){
return this.someValue() ? 'true' : 'false';
}, this);