knockout:在列中显示数组类别

时间:2014-06-18 10:30:15

标签: knockout.js

我在knockoutjs网站上的模板上做了一个基本的例子。我将其用于学习目的,但我需要将其应用于现有项目。这是一个基本的小提琴:

http://jsfiddle.net/hRm22/数组如下:

var viewModel = {
    seasons: ko.observableArray([{
        name: 'Spring',
        months: ['March', 'April', 'May']
    }, {
        name: 'Summer',
        months: ['June', 'July', 'August']
    }, {
        name: 'Autumn',
        months: ['September', 'October', 'November']
    }, {
        name: 'Winter',
        months: ['December', 'January', 'February']
    }])
};
ko.applyBindings(viewModel);

我想要做的是逐列显示季节,即。列标题:春,夏,秋,冬;然后根据各自的列列出个别月份。看起来相当简单,但我无法以那种格式得到它。

我应该继续使用表格,还是最好使用div?

1 个答案:

答案 0 :(得分:0)

如果没有桌子就可以轻松实现。这里没有必要使用模板。你可以把它变成一个模板。

<!-- ko foreach: seasons -->
<ul class="column">
    <li data-bind="text: name" class="header"></li>
    <!-- ko foreach: months -->
    <li data-bind="text: $data"></li>
    <!-- /ko -->
</ul>
<!-- /ko -->

.column {
    float: left;
    list-style-type: none;
}

.header {
    font-weight: bold
}

http://jsfiddle.net/94hpU/