<div id="tree" data-role="collapsible-set" data-bind="foreach:VM1.Folders"> **Parent Loop**
<!--Top level Folder-->
<div data-role="collapsible" class="Folder" data-bind="attr:{'id':$index()}">
<h3><span data-bind="text:name"></span></h3>
<!--Sub Folder start-->
<div data-bind="attr:{'id':'subtree'+$index()} ">
<!-- ko stopBinding: true -->
<div data-bind="foreach:VM2.SubFolders" data-role="collapsible-set">
<div data-role="collapsible" class="SubFolder"
data-bind="attr{'id':$parentContext.$index}"> **This gives undefined**
<h3><span data-bind="text:name"></span></h3>
</div>
</div>
<!--/ko-->
</div>
<!--End Of Sub Folder-->
</div>
<!--End Of Top level Folder-->
</div>
我正在使用knockout foreach绑定动态创建jquery移动可折叠项目
访问父循环$index()
时遇到问题。
我尝试了$parentContext.$index()
和$parentContext.$index
。两者都给出了未定义的&#39;。我正在使用停止绑定,是因为它无法获得父循环索引?
以下是我的代码。
答案 0 :(得分:1)
您应该替换以下行:
data-bind="attr{'id':$parentContext.$index}"> **This gives undefined**
有:
data-bind="attr{'id':$parentContext.$index()}"> **This gives undefined**
因为$ index是可观察的,就像你在第3行中所做的那样。