我正在使用jQuery Tmpl和Knockout。我有模板:
模板1 :
{{each (index, model) Models}}
<div data-bind="template: 'template2', foreach: model.SubModels"></div>
{{/each}}
模板2 :
<div>${FieldFromSubModel} {__Here i need index from template 1__}</div>
如何将索引变量传递给第二个tempalate?
请注意,我的模板要复杂得多,所以结构应该保持不变。
答案 0 :(得分:2)
由于您似乎使用了jquery模板,因此可以使用参数templateOptions
来传递额外选项:
<div data-bind="template: {name: 'template2', data: model.SubModels, templateOptions: {yourIndex: $index}}"></div>
现在,您可以在模板2 中使用$item.yourIndex
。
否则$parentContext.$index
或许也可以做到这一点。