knockout.js - 在 Knockout 中使用带有 bool 值的 attr 绑定(bind)

标签 knockout.js knockout-2.0

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

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

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

使用 knockout 的绑定(bind)功能完成此任务的最佳方法是什么?

最佳答案

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);

关于knockout.js - 在 Knockout 中使用带有 bool 值的 attr 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11304013/

相关文章:

javascript - 交换 observableArray 中的 2 个项目 - knockout

javascript - 防止在初始加载时触发手动订阅

javascript - knockout : Cannot read property 'fromJS' of undefined

javascript - simpleGrid 是否需要额外下载?

css - knockout validation 错误消息跨度

javascript - 遍历对象属性

javascript - 使用复选框和单击句柄绑定(bind)的 knockout 列表

jquery - $.each 和 ko.utils.arrayForEach 之间的区别

javascript - 使用 KnockoutJs 跟踪初始映射的最佳方法

javascript - 如何绑定(bind)ExtJS模型和knockout模板?