0

所以在我的 PhoneJS web 应用程序中,我有一个 dxList 小部件,每个项目都有复选框。我希望能够选择多个项目,然后对它们做一些事情。我正在尝试将“已检查”绑定绑定到可观察对象,但出现“未定义”错误。

这是列表的 dxTemplate 的代码

<div data-options="dxTemplate:{name:'item'}">
    <span data-bind="text: $data.information"></span>
    <div data-bind="dxCheckBox: { checked: check_boxes }"></div>
</div>

问题在于check_boxesviewModel,而不是item数组。我需要访问 viewModel 中的值。我试过viewModel.check_boxes了,但没有成功。

这是js代码:

AppNamespace.otherView = function (params) {
    var viewModel = {
        my_list: [
            {
                key: 'Group 1',
                items: [
                    { information: 'Test 1' },
                    { information: 'Test 2'},
                    { information: 'Test 3' }
                ]
            }
        ],
        check_boxes: ko.observable(false),
        //...etc

有没有人有这方面的经验,有没有解决办法?

谢谢!

4

1 回答 1

2

Knockout 提供了访问父绑定上下文的特殊属性。在你的情况下,两者都$parent应该$root工作。

Knockout 文档中有关此主题的更多信息:绑定上下文

于 2013-10-09T13:18:20.303 回答