我需要维护一些数据客户端以进行表单验证。数据是在服务器端创建的,然后我的计划是将它保存在一个全局JavaScript对象中,以便其他函数可以根据需要访问它。
我的代码目前看起来像这样:
<html>
<body>
<script language="javascript" type="text/javascript">
window.globVal = new Object();
<%
SomeObject o = new SomeObject();
ArrayList a = o.getArrayList();
for(int i = 0; i < a.size(); i++){
String str = a.get(i);
%>
window.globVal[<%= str %>] = <%= o.retrieve(str) %>;
<%}%>
</script>
...
[SOME OTHER STUFF]
....
<script language="javascript" type="text/javascript">
function myFunc(){
alert("My global obj: " +window.globVal);
}
</html>
警报打印出“我的全局obj:未定义
”我做错了什么?
答案 0 :(得分:-1)
我将在Java中创建对象/数组,使用JSON编码器将其序列化为JSON,将JSON String绑定到请求参数,并从此JSON字符串初始化JavaScript对象:
<script>
window.globVal = ${theJsonString};
</script>