JS对象与Knockout JS的HTML数据绑定

时间:2013-11-19 22:06:29

标签: javascript html knockout.js

我有一个用XML构建的JS对象。

如何将该JS对象绑定到html?

实施例: 视图模型:

  vm: {
    a: ko.observable()
  }

JS(模型):

aObj : {
  item1: [ { n: 'a1', v: 'v1'}, { n:'a2', v:'v2' } ],
  item2: [ ]
}

JS(绑定逻辑):

vm.a(aObj);

HTML:

<div data-bind="with: vm.a">
  <div data-bind="foreach: item1">
     <div data-bind="text: n"></div>
  </div>
</div>

我无法遍历item1的数组元素

我做错了什么?我得到以下计算出的DOM:

<div data-bind="with: vm.a">
  <div data-bind="foreach: item1">
  </div>
</div>

1 个答案:

答案 0 :(得分:0)

似乎正在发挥作用:http://jsfiddle.net/tpLVC/2/

你在控制台中有任何错误吗?在小提琴中的html中,请注意with绑定是with: a。如果您的顶级viewModel具有a属性,那么您应该像这样使用它。

如果您的顶级viewModel具有vm属性,那么with: vm.a才能正常工作。