使用jquery模板进行过多的递归

我正在尝试渲染递归模板,但我收到“太多递归”错误…

谁能告诉我这里做错了什么?: jsfiddle中的代码

谢谢!

编辑1(代码添加到post)

HTML

 
    {{each(i, module) modules}}
  • ${module.mod_name}
  • {{if module.sub_modules}} {{tmpl "my_template_compiled"}} {{/if}} {{/each}}

JS

 var data = {"modules":[ { "id_modules": "1", "id_modules_parent": "0", "mod_name": "mod 1", "sub_modules": [ { "id_modules": "5", "id_modules_parent": "1", "mod_name": "mod 1a" }, { "id_modules": "7", "id_modules_parent": "1", "mod_name": "mod 1b" } ] }, { "id_modules": "2", "id_modules_parent": "0", "mod_name": "mod 2", "sub_modules": [ { "id_modules": "6", "id_modules_parent": "2", "mod_name": "mod 2a", "sub_modules": [ { "id_modules": "3", "id_modules_parent": "6", "mod_name": "mod 2aa" } ] }, { "id_modules": "4", "id_modules_parent": "2", "mod_name": "mod 2b" } ] } ]}; $("#my_template").template("my_template_compiled"); $.tmpl("my_template_compiled", data).appendTo("#some_div"); 

http://jsfiddle.net/aNPvz/22/ (不要问我为什么子弹点不会在jsFiddle上渲染;他们在我建立自己的页面时会这样做。)

{{tmpl "my_template_compiled"}}正在调用整个模块而不仅仅是子模块。 请注意对json结构的更改以使递归成为可能。