Javascript 如何在ko虚拟元素的foreach循环中保持上下文
我想知道,为什么变量'Value.SpecificValue'可以在一种情况下使用,而在另一种情况下不能使用(请参阅内联注释) 我将代码用作模板。我的输入是对象“值” 它的属性是Value.SpeficValue(字符串)和Value.List(对象{Name,Value}的列表),其中的值应该与Value.SpeficValue匹配 为什么我不能访问foreach循环中的Value.SpecificValueJavascript 如何在ko虚拟元素的foreach循环中保持上下文,javascript,knockout.js,foreach,Javascript,Knockout.js,Foreach,我想知道,为什么变量'Value.SpecificValue'可以在一种情况下使用,而在另一种情况下不能使用(请参阅内联注释) 我将代码用作模板。我的输入是对象“值” 它的属性是Value.SpeficValue(字符串)和Value.List(对象{Name,Value}的列表),其中的值应该与Value.SpeficValue匹配 为什么我不能访问foreach循环中的Value.SpecificValue <label data-bind="text: Value.Speci
<label data-bind="text: Value.SpecificValue"></label> @*working*@
<!-- ko foreach: { data: Value.List, as: 'list' } -->
<div class="form-check">
<label data-bind="text: Value.SpecificValue"></label> @*not working*@
<label>
<input type="radio" data-bind="value: list.Value, checked: Value.SelectedValue, attr:{id:ElementId}"> <span class="label-text" data-bind="text: list.Name"></span>
</label>
</div>
<!-- /ko -->
@*正在工作*@
@*不起作用*@
每个绑定的敲除都有自己的绑定上下文。$data是foreach循环的当前数据项
访问当前位于外部上下文中的Value.SpecificValue
。您需要使用绑定上下文的$parent属性才能使其正常工作
<label data-bind="text: $parent.Value.SpecificValue"></label>