我创建了一个的jsfiddle,以显示如何一个样本可实现:http://jsfiddle.net/bxfXd/3509/
标记:
<div class="outer" data-bind="foreach:itemsGrouped">
<div class="inner">
<!-- ko foreach: $data -->
<div class="main" data-bind="text:$data"></div>
<!-- /ko -->
<div>
</div>
JS:
Array.prototype.chunk = function (chunkSize) {
var array = this;
return [].concat.apply([],
array.map(function (elem, i) {
return i % chunkSize ? [] : [array.slice(i, i + chunkSize)];
}));
}
var SimpleListModel = function(items) {
var self = this;
self.items = ko.observableArray(items);
self.itemsGrouped = ko.computed(function() {
return self.items().chunk(3);
});
};
ko.applyBindings(new SimpleListModel(
["One", "Two", "Three", "Four", "Five", "Six"]));
作为参考,块方法是从here采取张贴@ninjagecko
什么你在这里做的是重新建立一个表div的形式。在桌子设计的黑暗时代,我们需要这样做。你应该在数组中每行创建一个div并使用CSS来修复布局。也在div的div无效 – Anders