如何从javascript文件访问Web应用程序上下文?

时间:2010-11-26 06:15:52

标签: java jsp jstl

我有一个javascript文件“util.js”,我在jsp文件中使用它。如何访问javascript文件中的应用程序上下文EL ${pageContext.request.contextPath}

如果在JSP内部复制javascript函数,则此EL正在工作。但如果我将它保存在单独的javascript文件中,则无效。

2 个答案:

答案 0 :(得分:3)

好吧,您可以将.js文件作为.jsp,但使用内容类型text/javascript(不受欢迎),或者您可以在jsp中定义包含以下内容的javascript变量.js文件,并将这些变量传递给函数(或不太可取 - 直接使用)。例如:

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

答案 1 :(得分:2)

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