父循环在jQuery jsrender.js和jquery.views中的itemNumber值.js



我使用jQuery模板使用jsrender.js &jquery.views.js by http://github.com/BorisMoore/jsviews

我有一个嵌套循环和嵌套循环内,我想get itemNumber或其他一些值。如:

模板:

{{#each ImageQuestions}}
  <div id="image-{{=$view.itemNumber}}">
  {{#each GroupImagesRepeatation}}
    <input type="radio" name="{{=$view.parent.data.QuestionID}}" value="{{=$view.itemNumber}}" />
  {{/each}}
{{/each}}
数组:

var Questions = {
        ImageQuestions: [
                            { 
                                QuestionID: 1,
                                GroupImagesRepeatation: [1, 2, 3, 4]
                            },
                            {
                                QuestionID: 2,
                                GroupImagesRepeatation: [1, 2, 3, 4, 5, 6]
                            }
                        ]
    };

Query: {{=$view.parent.data.QuestionID}} is what i want to work correct。我需要为每个嵌套循环赋予radioList唯一的名称。

请帮助我。

{{=$view.parent.data.QuestionID}}没有返回正确值的原因是因为您需要通过两个父级:{{=$view.parent.parent.data.QuestionID}}。直接父节点的数据是groupimagesrepeat数组。它的父元素是外部每个循环的数据项——它有一个questionID属性。

你可以使用更简洁的语法:

{{#each ImageQuestions}}
  <div id="image-{{=$itemNumber}}">
    {{#each GroupImagesRepeatation}}
      <input type="radio" name="{{=$parent.parent.data.QuestionID}}" value="  {{=$itemNumber}}" />
    {{/each}}
{{/each}}

在编译后的模板中进行调试的提示:设置$.views.allowCode = true;,然后在模板中添加{{*debugger;}},如{{*debugger;}}<input type="radio" ...

最新更新