如何使用JSP中的数据填充全局JavaScript对象?

时间:2012-07-18 10:52:12

标签: javascript html jsp

我需要维护一些数据客户端以进行表单验证。数据是在服务器端创建的,然后我的计划是将它保存在一个全局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:未定义

我做错了什么?

1 个答案:

答案 0 :(得分:-1)

我将在Java中创建对象/数组,使用JSON编码器将其序列化为JSON,将JSON String绑定到请求参数,并从此JSON字符串初始化JavaScript对象:

<script>
    window.globVal = ${theJsonString};
</script>