获取Knockoutjs中foreach别名的索引

时间:2013-06-06 04:11:13

标签: html knockout.js foreach

我给了Knockout foreach的每个数据的别名,所以我可以在另一个嵌套的foreach中调用它。 现在我想得到别名的索引。我试过'.index()'和'。$ index'但没用。

<!-- ko foreach: {data: subjects, as: 'subject' }-->
/*nested foreach*/
subject.index() <-- undefined
<!-- /ko-->

请帮忙,谢谢

1 个答案:

答案 0 :(得分:6)

您可以使用标准的javascript函数Array.indexOf()

<!-- ko foreach: {data: subjects, as: 'subject' }-->
/*nested foreach*/
  <span data-bind="text: subjects.indexOf(subject)"></span>
<!-- /ko-->  

$index上下文值可能仅用于非虚拟for-each,例如

<ul data-bind="foreach: categories">
   <span data-bind="text: $index"></span>
</ul>