3

jQuery 模板插件使用${foo}语法(jquery.tmpl doc 中的示例):

$.tmpl( "<li>${Name}</li>", myData )

但 Grails 也使用它(Grails 文档中的示例):

<body>
  Hello ${params.name}
</body>

因此,当我将其包含$.tmpl( "<li>${Name}</li>", myData )在我的 .gsp 中时,Grails 会将其呈现为 .gsp $.tmpl( "<li></li>", myData );

有没有简单的方法解决这个问题?

4

4 回答 4

6

使用 alt 语法:{{= Name }}

http://api.jquery.com/template-tag-equal/

于 2010-10-13T19:06:11.773 回答
2

我只涉足过 Grails,但有一种方法可以得到文字输出:

$.tmpl("<li><%='${Name}'%></li>", myData)
于 2010-10-06T23:41:23.503 回答
0

您可以尝试使用 jquery.noConflict 或 jQuery 本身:

jQuery.tmpl( "<li>${Name}</li>", myData )

或者

var jqc = jQuery.noConflict();
jqc.tmpl( "<li>${Name}</li>", myData )
于 2010-10-12T10:21:32.447 回答
0

为了避免冲突,你应该使用 zack 提到的语法。但是,使用此标签时要小心:

{{= Name}}

你应该在“=”和变量的第一个字母之间有空格。

{{=姓名}}

{{= 名称}}

示例:
错误

<tr id="ad{{=idmatchingtem }}"></tr>

在此处输入图像描述

<tr id="ad{{= idmatchingtem }}"></tr>

在此处输入图像描述

于 2013-05-07T08:57:45.037 回答