Javascript 混合使用Freemarker和jQuery

Javascript 混合使用Freemarker和jQuery,javascript,jquery,freemarker,Javascript,Jquery,Freemarker,我在页面上有一个freemarker模板和jQuery。 这一问题与使用$进行评估的两种语文有关 自由标记模板 <#assign mode = app.mode> <#assign namespace = app.namespace> <#if mode =="view"> <script> // execute some script.. <script> <#elseif mode == "edit">

我在页面上有一个freemarker模板和jQuery。 这一问题与使用$进行评估的两种语文有关

自由标记模板

<#assign mode = app.mode>
<#assign namespace = app.namespace>
<#if mode =="view">
 <script>
  //   execute some script..
  <script>
<#elseif mode == "edit">
 <script>
   ${namespace}init();
   function ${namespace}init(){
       //init code..
   }
 <script>
</#if>
在脚本标记中,我想为函数命名名称空间,但我得到的名称空间没有定义。我认为它的jquery试图计算${namespace},但我希望freemarker计算它,这样函数就可以被命名为namespace


知道如何实现这一点吗?

因为FreeMarker是一种服务器端模板语言,所以表达式${namespace}应该早在JavaScript/jQuery开始使用之前就消失了……换句话说${namespace}在jQuery能够看到它之前,将被替换为名称空间变量FreeMarker包含的任何内容……如果查看呈现的页面源代码,您会看到什么

如果您尝试在函数声明之后调用namespace_init,会发生什么情况应该不是问题,因为您没有将函数分配给变量,但是谁知道呢

另外,您只需执行以下操作并保存一个:

为什么,${namespace}对jQuery有什么意义吗?
function ${app.namespace}_init() {
    // your init code
}

${app.namespace}_init();