2010-11-26 55 views
1

我有一个JavaScript文件(Util.js),我在JSP中使用它。如何访问JavaScript文件中的应用程序上下文EL'$ {pageContext.request.contextPath}?如果javascript函数在JSP内复制,这个EL工作正常。但如果我把它保存在单独的JS文件中,这是行不通的。如何访问JAVASCRIPT文件中的Web应用程序上下文?

回答

2

好了,你可以有你的.js文件为.jsp,但Content-Type的text/javascript(不良),或者你可以定义你的JSP的JavaScript变量包括.js文件,并通过(或不理想 - 直接使用)这些变量的功能。例如:

<script type="text/javascript" src="js/scripts.js"></script> 
<input type="button" 
    onclick="someExternalJavascriptFunction('${pageContext.request.foo}')" /> 
+0

感谢您的回复。是的,这是解决方案之一。我想知道如果我在JSP中包含的JavaScript文件也应该在JSP页面转换时进行翻译。这对于JSP文件中的JavaScript函数是有意义的,但对于JS文件不是。 – srikanth 2010-11-26 06:45:30

+0

js文件不是由JSP servlet处理的。因此它不会评估el表达式。 – Bozho 2010-11-26 06:58:31

2

我不认为你可以在JavaScript文件本身使用EL。您可能能够在jsp(可能是布局文件)中使用var application_context = $ {pageContext.request.contextPath},而var application_context本身可以直接定义到JavaScript文件中。

相关问题