如何在js渲染迭代循环中使用从modelmap发送的变量

时间:2014-11-12 07:59:27

标签: java javascript spring web jsrender

我将模型映射中的变量从java控制器发送到这样的视图:

@RequestMapping(value = "/someAction", method = RequestMethod.GET)
public String search(ModelMap model) {
  model.addAttribute("myVariable",true);
  return "myView"; //returns the view 
}

现在我有了这个视图文件“myView.html”,其中我使用了jsrender并且有一个数据并且我迭代它如下所示。我还需要在迭代中使用“myVariable”,如下所示:

<script id="iterData" type="text/x-jsrender">
{^{for #data}}
    {{if Name != '-'}}
            {{if Age =='20'}}
               {{if myVariable??}} //This part doesnt work.I wonder how to use it here

                    //Some codes                     

               {{/if}}

            {{/if}}
    {{/if}}
{{/for}}
</script>

任何人都可以帮助我如何在jsrender迭代中使用“myvariable”吗?

1 个答案:

答案 0 :(得分:0)

我不确定您对{{for #data}}的使用 - 因此我在评论中提出了问题。

但是将变量传递给嵌套模板上下文的一种方法是将模板变量从外部上下文传递到内部上下文:

例如,如果myVariable是任何外部上下文的属性,则可以写:

{{!-- myVariable and someArray are properties on the data at this level--}}

{{for someArray ~myVar=myVariable}} 
  {{if Name != '-'}}
    {{if Age =='20'}}
      {{if ~myVar}}
         ...                     
      {{/if}}
    {{/if}}
  {{/if}}
{{/for}}