【问题标题】:JQuery Templates: pass parameter into a functionJQuery模板:将参数传递给函数
【发布时间】:2011-08-26 16:19:27
【问题描述】:

所以我有这个调用函数的 JQuery 模板:

<script id="Fred" type="text/x-jQuery-tmpl">
  <td>${functionX()}${Field2}</td>
</script>

效果很好。但是现在我想向其中传递一个参数,但是以下行不通。

<script id="Fred" type="text/x-jQuery-tmpl">
  <td>${functionX(${Field1})}${Field2}</td>
</script>

有什么建议吗?

【问题讨论】:

    标签: jquery-templates


    【解决方案1】:

    可以不使用${直接访问Field1,比如:

    <td>${functionX(Field1)}${Field2}</td>
    

    【讨论】:

    • 太棒了。这行得通。看起来不应该,但确实如此。
    【解决方案2】:

    想通了:

    <td>${functionX($data.Field1)}${Field2}</td>
    

    【讨论】:

    • 这显然只是另一种方式。接受的答案也是一个好方法。
    • $data 是隐含的。因此,$data.Field1 和 Field1 是相同的(也是 $item.data.Field1)。当你想将整个对象传递给某个东西时,$data 确实变得非常有用。
    【解决方案3】:

    这是如何解决问题的另一个示例:

    <script id="testTemplate" type="text/x-jquery-tmpl">
        {{if title.length}}
        <h3>${title}</h3>
        <p>Start: ${ render($data) } :End</p>
        {{/if}}
    </script>
    

    你可以看到这个方法在this link有效。

    【讨论】:

      猜你喜欢
      • 2016-05-17
      • 2018-09-28
      • 1970-01-01
      • 2013-11-17
      • 1970-01-01
      • 2013-01-27
      • 2011-11-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多