0

我正在使用 Spring MVC 和带有 jQ​​uery 模板的 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 变量并将其删除,从而使模板引擎无法应用更改!

如何解决这个冲突!

4

2 回答 2

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);
于 2013-11-14T05:21:29.537 回答
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>
于 2013-11-08T16:37:46.893 回答