使用jQuery模板开发Spring MVC和Backbone的应用程序。
我发现了一个奇怪的冲突,因为Spring MVC和jQuery模板都使用相同的语法来表示变量
${ variable }
所以,当我宣布这样的模板时
<script id="appointment-template" type="text/x-jquery-tmpl">
<li><a href="#" data-id="${eventId}">${title}</a></li>
Spring MVC将此$ {eventId}视为Spring变量并将其删除,使模板引擎无法应用更改!
如何解决此冲突!
答案 0 :(得分:0)
通过Spring MVC,我猜你的意思是jspx视图。对于jspx,您可以尝试以下操作,以便在服务器端不解释${variable}
。
<script id="appointment-template" type="text/x-jquery-tmpl">
// <![CDATA[
<li><a href="#" data-id="${eventId}">${title}</a></li>
// ]]>
</script>
答案 1 :(得分:0)
找到解决问题的方法。
解决方案:
使用任何其他无冲突模式,例如
<script id="appointment-template" type="text/x-jquery-tmpl">
<li><a href="#" data-id="@{eventId}">@{title}</a></li>
在支持的js中,用jQuery模式替换模式
var temp = $('#appointment-template').text().replace(/@/g,'$');
var template = $('#appointment-template').text(temp);