我知道所有的javascript文件都不是由服务器编译的,因为它只是直接提供服务。在javascript .js文件中访问struts2 java静态变量
但是,在我的后端,大多数变量被组织为静态的最终变量,所以当事情发生变化时,可以在一个地方完全改变。
目前我没有办法保持JavaScript和后端操作类变量之间的协调。像在线唯一的建议就是在jsp文件中创建javascript。有没有其他办法呢?
我知道所有的javascript文件都不是由服务器编译的,因为它只是直接提供服务。在javascript .js文件中访问struts2 java静态变量
但是,在我的后端,大多数变量被组织为静态的最终变量,所以当事情发生变化时,可以在一个地方完全改变。
目前我没有办法保持JavaScript和后端操作类变量之间的协调。像在线唯一的建议就是在jsp文件中创建javascript。有没有其他办法呢?
您可以从JSP动态创建您的JavaScript文件。
e.g:在您的HTML或主JSP文件有以下
dyanmicJavascript.action会打电话给你的动作类,然后将返回一个jsp。 jsp将只有javascript代码(无HTML STUFF)。所以你的jsp看起来像。
//标签库的东西+其他jsp的具体东西 //普通的JavaScript代码如下 var globalVariable = 10; VAR dynamicVariables =
替代从jsp文件
在JSP设置的JavaScript变量,然后在javascript使用它(的.js)创建JS文件
对于例如
的index.jsp
<html>
<head>
<script>
var contextPath="${pageContext.request.contextPath}";
var otherStaticVariable="<s:property value="@[email protected]"/>";
</script>
<script src="js/other.js"></script>
</head>
//Rest of the page
</html>
现在other.js可以直接引用的contextPath & otherStaticVariable内它的代码。
我在我的一些项目中使用了类似的代码。