【问题标题】:jquery tmpl inside each每个里面的jquery tmpl
【发布时间】:2012-10-06 09:41:20
【问题描述】:

我有一组通过 {{each}} 语句迭代的模板。 代码就像

    <script id="inTmpl" type="text/x-jquery-tmpl">
         ${sub.title}
    </script>
    <script id="outTmpl" type="text/x-jquery-tmpl">
         <div>
         {{each(i, sub) parent}}
              ${sub.title}
              {{tmpl "#inTmpl"}}
         {{/each}}
         </div>
    </script>
    <script type="text/javascript">
          $(function() {
               $("#outTmpl").tmpl({
                    "parent": [
                        {"title": "a"},
                        {"title": "b"}
                    ]
               }).appendTo("body");
          });
    </script>

然后我得到错误:“Uncaught ReferenceError: sub is not defined”。为什么?!

【问题讨论】:

    标签: jquery jquery-templates


    【解决方案1】:

    您需要将新模板传递给我相信的子对象。

    所以渲染第二个模板的行应该是这样的

        {{tmpl(sub) "#inTmpl"}}
    

    这是我获得信息的地方。我自己还没试过。

    http://skilldrick.co.uk/tmpl/#slide14

    【讨论】:

      【解决方案2】:

      您可以在此处找到存档文档: http://web.archive.org/web/20120921050105/http://api.jquery.com/template-tag-tmpl/

      这是一个工作版本:

      <script id="inTmpl" type="text/x-jquery-tmpl">
        ${title}
      </script>
      
      <script id="outTmpl" type="text/x-jquery-tmpl">
        <div>
          {{each(i, sub) parent}}
            ${sub.title}
            {{tmpl(sub) "#inTmpl"}}
          {{/each}}
        </div>
      </script>
      
      <script type="text/javascript">
      $(function() {
        $("#outTmpl").tmpl({
          "parent": [
            {"title": "a"},
            {"title": "b"}
          ]
        }).appendTo("body");
      });
      </script>
      

      【讨论】:

        猜你喜欢
        • 2013-03-12
        • 2014-02-18
        • 2017-05-10
        • 2018-05-14
        • 1970-01-01
        • 2011-05-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多