Knockout.js Foreach内部Foreach未在击倒中工作
我试图在淘汰赛中使用foreach-inside-foreach-in-knockout,但它不起作用。外部foreach对我来说很好,但内部foreach是说Knockout.js Foreach内部Foreach未在击倒中工作,knockout.js,knockout-2.0,Knockout.js,Knockout 2.0,我试图在淘汰赛中使用foreach-inside-foreach-in-knockout,但它不起作用。外部foreach对我来说很好,但内部foreach是说MyFMnu1未定义 如果我把这个内部的foreach放在外面,那么它是工作的,但是为什么它在foreach里面不工作呢 <div data-bind="foreach: MyFmnu"> <!-- ko if: key === 'ASM' --> <input type="
MyFMnu1未定义
如果我把这个内部的foreach放在外面,那么它是工作的,但是为什么它在foreach里面不工作呢
<div data-bind="foreach: MyFmnu">
<!-- ko if: key === 'ASM' -->
<input type="checkbox" value="ASM" class="styled"
name="fldMenuCheck_Acc1" id="fldMenuCheck_Acc1"
style="width:10%;"/>
<!-- /ko -->
<div data-bind="foreach: MyFmnu1">
<!-- ko if: key === 'ASMS' -->
<input type="checkbox" value="ASMS" class="styled"
name="fldMenuCheck_Acc12" id="fldMenuCheck_Acc12"
style="width:10%;"/>
<!-- /ko -->
</div>
</div>
如果将
MyFmnu1
数组作为MyFmnu
数组中每个对象的属性,它将起作用。在foreach绑定中,绑定上下文是集合项,而不是根视图模型。
要在foreach绑定中访问父上下文,请使用$parent,如下所示:
<div data-bind="foreach: MyFmnu">
<!-- ko if: key === 'ASM' -->
<input type="checkbox" value="ASM" class="styled"
name="fldMenuCheck_Acc1" id="fldMenuCheck_Acc1"
style="width:10%;"/>
<!-- /ko -->
<div data-bind="foreach: $parent.MyFmnu1">
<!-- ko if: key === 'ASMS' -->
<input type="checkbox" value="ASMS" class="styled"
name="fldMenuCheck_Acc12" id="fldMenuCheck_Acc12"
style="width:10%;"/>
<!-- /ko -->
</div>
</div>
此处的更多信息:您可以发布视图模型吗?显示完整的HTML标记。我在这里只看到一个foreach
foreach
。你能给我们看看我的fmnu吗?除非你在MyFmnu对象上有一个名为MyFmnu1的属性,否则它不会工作。它对我有用。谢谢,但当循环中有大数据时会挂起。
<div data-bind="foreach: MyFmnu">
<!-- ko if: key === 'ASM' -->
<input type="checkbox" value="ASM" class="styled"
name="fldMenuCheck_Acc1" id="fldMenuCheck_Acc1"
style="width:10%;"/>
<!-- /ko -->
<div data-bind="foreach: $parent.MyFmnu1">
<!-- ko if: key === 'ASMS' -->
<input type="checkbox" value="ASMS" class="styled"
name="fldMenuCheck_Acc12" id="fldMenuCheck_Acc12"
style="width:10%;"/>
<!-- /ko -->
</div>
</div>