KnockoutJS - 不比HTML中的第一个绑定绑定更多

时间:2011-11-24 07:03:00

标签: knockout.js

初学者问题:

我有一个简单的viewModel和几个带有简单<div>绑定的data-bind="text: property"元素。

绑定仅适用于HTML中的第一个data-bind

关于jsFiddle的示例:http://jsfiddle.net/clrudolphi/ucAUC/ 在这个例子中,我已经定义了7个带有绑定的<div>个。前4个看起来像这样:

       <div id="eagleMain" >
           <div class="eagle-num" data-bind="text: num" />
           <div class="eagle-name" data-bind="text: name" />
           <div class="eagle-date" data-bind="text: date" />
           <div class="eagle-current" data-bind="text: current" />
       </div>

脚本如下所示:

var eagle = {
  num: '2',
  name: "John",
  date: "Jan 1, 2011",
  current: "student",
  memories: "camping",
  projectName: "Clothing Drive",
  projectDescription: "lorem ipsum"
};

ko.applyBindings(eagle);

唯一接收值的div是第一个(绑定到'num'属性) 我做错了什么?

谢谢, 克里斯

2 个答案:

答案 0 :(得分:3)

尽量不要使用/>来缩短代码。它仅适用于span

Go for:

<div class="eagle-num" data-bind="text: num"></div>
<div class="eagle-name" data-bind="text: name"></div>
<div class="eagle-date" data-bind="text: date"></div>
<div class="eagle-current" data-bind="text: current"></div>

答案 1 :(得分:1)

@nEEbz打败了我。

解决方案: http://jsfiddle.net/fZYVb/1/