10

我正在尝试从我的 viewModel 中的布尔值创建一个隐藏的表单字段。

    <tbody  data-bind="foreach: MediaFiles">
        <tr>
            <td>
                <input type="hidden" 
                        data-bind="attr: { value: MyBool }" />
            </td>
        </tr>
    </tbody>  

根据视图模型中的内容,我需要输入的值是“真”或“假”。为清楚起见,省略了其他属性。

使用淘汰赛的绑定功能完成此任务的最佳方法是什么?

4

1 回答 1

18
data-bind="attr: { value: MyBool ? 'true' : 'false' }"

或者如果 MyBool 是可观察的:

data-bind="attr: { value: MyBool() ? 'true' : 'false' }"

或者您可以使用计算出的 observable

MyBool = ko.computed(function(){

   return this.someValue() ? 'true' : 'false';

}, this);
于 2012-07-03T03:24:37.850 回答