我如何在application.js中引用grails.app.context?

时间:2013-05-30 16:24:18

标签: grails

我想在application.js中引用绝对URL,但grails.app.context在环境之间发生变化。

如何在application.js中引用grails.app.context?

2 个答案:

答案 0 :(得分:2)

您可以将上下文放入全局JS变量中:

<g:javascript>
   window.appContext = '${request.contextPath}';
</g:javascript>

并在普通的javascript中使用它,例如:

$.ajax({
   url: appContext + '/hello/world'
})

答案 1 :(得分:2)

Igor建议的答案很好,我个人更喜欢将这些信息存储到元标记(在GSP布局中)以避免定义javascript全局变量。像这样:

<meta name="appContext" content="${g.resource(dir: '/')}" /> 

因此,您可以从应用程序中的任何位置检索值。像这样:

$('meta[name=appContext]').attr('content');