包含的数据与[[1,2,3],[4,5,6]]
类似,有时候就像[[1,2],[4,5]]
一样。这是HTML。
<button data-bind="click: refreshJSON">Test</button>
<table>
<tbody data-bind="foreach: array">
<tr data-bind="foreach: subarray">
<td data-bind="text: $data"></td>
</tr>
</tbody>
</table>
<script type="text/javascript">
var ViewModel = {
tableModel : ko.observableArray([[1,2,3],[4,5,6]]),
refreshJSON : function(){
this.tableModel([[1,2],[4,5]]);
}
};
ko.applyBindings(ViewModel);
</script>
我猜我必须在每个子阵列上使用ko.observableArray()
但是我不清楚如何执行此操作,或者如何在HTML中执行data-binds
。
答案 0 :(得分:5)
更新:删除了observableArray位内的observableArray。显然这不起作用。只需绑定您的外部集合。
绑定部分相当容易:
<div data-bind="foreach: tableModel">
<div data-bind="foreach: $data">
<span data-bind="text: $data"></span>
</div>
</div>