我在这里创建了一个带有问题的JSFiddle http://jsfiddle.net/benjishults/PMeJh/1/。
HTML:
<div data-bind="with: jobBeingViewed">
<table>
<thead>
<tr>
<th data-bind="text: 'Days offset from ' + runtime"></th>
<th>-7</th>
<th>-6</th>
<th>-5</th>
<th>-4</th>
<th>-3</th>
<th>-2</th>
<th>-1</th>
</tr>
</thead>
<tbody>
<tr>
<td data-bind="text: 'Actuals Availability'"></td>
<!-- ko.foreach: actuals -->
<td data-bind="text: $data"></td>
<!-- /ko -->
</tr>
</tbody>
</table>
</div>
JavaScript的:
function VM() {
function Job() {
this.runtime="2014-03-07";
this.actuals = ko.observableArray([1,1,1,1,1,1,1]);
}
this.jobBeingViewed = ko.observable(new Job());
}
ko.applyBindings(new VM());
在页面上,第二行只填充了两列,如下所示:
Actuals Availability [object Object]
我希望它看起来像这样:
Actuals Availability 1 1 1 1 1 1 1
我做错了什么?
我尝试过加入parens。我试过通过$ root.jobBeingViewed.actuals引用实际值。两者都没有。
答案 0 :(得分:2)
你的错误是ko.foreach
<!-- ko.foreach: actuals -->
应该是
<!-- ko foreach: actuals -->