【问题标题】:KnockoutJs: 2d observable array to tableKnockoutJs:二维可观察数组到表
【发布时间】:2014-07-06 14:49:45
【问题描述】:

我想使用 knockoutJs 的可观察数组功能在 html 中创建一个输入字段表。作为我的 html 文件,我得到了这个:

<table data-bind="foreach: textFields">
    <tr data-bind="foreach: $data">
        <td><input data-bind="value: $data"></td>
    </tr>
</table>

(当然这不是整个html,而是相关部分。)

作为淘汰文件,我得到了这个:

function MatrixViewModel(){
    var self = this;
    self.textFields = ko.observableArray([[0, 0], [0, 0]]);
}
ko.applyBindings(new MatrixViewModel());

据我了解,如果表格获取 textFields 数组中的每个数组,即 [0, 0] 和 [0, 0],应该会发生什么。然后为其中的每一个创建一个表行。此表行采用每个值,即 0 和 0 并为每个值创建一个 td。然后在 td 内部,该值用于输入字段。

但我得到的只是屏幕上一个孤独的输入字段。所以我的代码/我的理解一定有问题。谁能告诉我什么?

【问题讨论】:

  • 您提供的代码似乎没有任何问题 - here's a Fiddle 您的代码复制/粘贴为我生成了一个 2x2 网格的输入框。我猜你没有提供的代码有问题。

标签: javascript html arrays knockout.js


【解决方案1】:

我发现问题出在脚本标签的位置上。我必须把它们放在身体之后,而不是之前。

【讨论】:

  • 您能否接受您的回答,以免这个问题显示为未回答?
  • 我只能在我回答后两天这样做。
  • 好吧抱歉我不知道
猜你喜欢
  • 2013-05-23
  • 2012-04-20
  • 2017-11-25
  • 1970-01-01
  • 2015-09-18
  • 1970-01-01
  • 2018-08-04
  • 2013-12-16
  • 2015-11-30
相关资源
最近更新 更多