KnockoutJs - 处理具有相同字段的多个区域

时间:2012-04-22 16:11:01

标签: javascript knockout.js

我有几个区域具有可重复的内容,这些区域是在服务器端生成的。我使用knockout-js动态隐藏/显示区域内的区域。我的标记如下:

<div>
  <input type="checkbox"  data-bind="checked: a1" />
  <div data-bind="visible: a1">region0</div>
</div>
<div>
    <input type="checkbox" data-bind="checked: a2" />
    <div data-bind="visible: a2">region1</div>
</div>
<script>
    var viewModel = {
        a1: ko.observable(false),
        a2: ko.observable(false)
    };
    ko.applyBindings(viewModel);
</script>

假设我有10个这样的地区。是否有更方便/更好的方法来实现相同的目标? 可以说,我明确地不想使用foreach绑定并在客户端上生成标记(对于可以使用禁用的js访问的站点)。

有没有办法省略viewModel规范(script标签内的部分),因为我觉得淘汰赛可以为我检测并自动创建字段?

P.S。我是JS新手,请原谅我的简单问题:)

1 个答案:

答案 0 :(得分:1)

  

有没有办法省略viewModel规范(脚本标签内的部分),因为我觉得淘汰赛可以检测并为我自动创建字段?

虽然我个人更喜欢Knockout,但您可能需要查看Angular。 Angular会自动创建视图模型属性,如this example所示。