从父模板获取值

时间:2013-07-23 09:44:09

标签: jquery knockout.js jquery-templates

我正在使用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?

请注意,我的模板要复杂得多,所以结构应该保持不变。

1 个答案:

答案 0 :(得分:2)

由于您似乎使用了jquery模板,因此可以使用参数templateOptions来传递额外选项:

<div data-bind="template: {name: 'template2', data: model.SubModels, templateOptions: {yourIndex: $index}}"></div>

现在,您可以在模板2 中使用$item.yourIndex

否则$parentContext.$index或许也可以做到这一点。