1

我想创建一个编号列表并使用敲除来绑定数据。数据绑定工作正常,但我无法想出一种方法来根据它们在可观察数组中的位置平滑地生成数字。未来可观察的数组可能会发生变化,所以我希望淘汰赛能够动态处理列表的编号。

这是我的html:

<ul class="nav nav-list" data-bind="foreach: sidebarItems">
    <li class="" data-bind="css: isActive">
        <a href="#dropdowns" data-bind="text: text"></a>
    </li>
</ul>

这是我的 Javascript 代码:

self.sidebarItems = ko.observable([
    {text: 'Option'}, 
    {text: 'Option'}, 
    {text: 'Option'}, 
    {text: 'Option'}, 
    {text: 'Option'}
]);

我希望列表显示:
1 - 选项
2 - 选项
3 - 选项
等。

4

2 回答 2

2

请参阅文档: http: //knockoutjs.com/documentation/foreach-binding.html

使用$index

<ul class="nav nav-list" data-bind="foreach: sidebarItems">
    <li class="" data-bind="css: isActive">
        <a href="#dropdowns" data-bind="text: $index() + text()"></a>
    </li>
</ul>
于 2013-09-03T21:16:07.317 回答
2

2个选项。

  1. 改变你ulol
  2. 使用淘汰$index变量(如text:$index在 foreach 中)
于 2013-09-03T21:16:45.897 回答