knockout.js foreach绑定评论不按预期工作

时间:2014-03-12 15:01:03

标签: javascript knockout.js

我在这里创建了一个带有问题的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引用实际值。两者都没有。

1 个答案:

答案 0 :(得分:2)

你的错误是ko.foreach

中的错误点
<!-- ko.foreach: actuals -->

应该是

<!-- ko foreach: actuals -->

工作示例:http://jsfiddle.net/PMeJh/2/