日期:2014-05-19  浏览次数:20996 次

JavaScript怎么调用jsp声明的二维数组呢?跪求高手
上代码

<%!
  public static final int [][]array_JD = new int[3][3];
%>
<%
  array_JD[0][0]=15;
  array_JD[0][1]=15;
  array_JD[0][2]=15;
  array_JD[1][0]=55;
  array_JD[1][1]=55;
  array_JD[1][2]=55;
  array_JD[2][0]=95;
  array_JD[2][1]=95;
  array_JD[2][2]=95;
  out.println(array_JD[2][2]); 
%>
<%--至此,用jsp定义了全局二维数组,初始化后进行输出发现结果是正确的--%>

之后是各种挣扎。。。
①先是想直接输出,因为是定义的全局变量,但是发现不行,网页没显示。。。
<script language="JavaScript">

document.write(array_JD[1][1]);

</script>

②然后查百度,查google,发现了这种方法,但是。。。。。依旧无效
var array_JD1 = Array_2(3,3); //这个Array_2(m,n)是我用JavaScript定义的m×n二维数组
<% int m=0;int n=0;
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
%> array_JD1[<%=i%>][<%=j%>] = <%=array_JD[m][n]%>;
<%
m=m+1;n=n+1;
}
}
%>
我待大作业如初恋,大作业虐我千百遍,,,求各路高玩啊。。。。

------解决方案--------------------
Java code

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="net.sf.json.JSONArray"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript" src="/jquery/jquery-1.4.2.js"></script>
<script type="text/javascript" src="/js/common/json2.js"></script>
<script type="text/javascript">


   

        
$(function() {
    
           var arrsStr = $("#arrs").val(); //从隐藏域得到json字符串
           
           var arrs = JSON.parse(arrsStr) ; //把json字符串转成json对象

           //没有json.js,用 var arrs = null ;eval("arrs"+ arrsStr) 
              
           for(var i = 0; i < arrs.length; i++){

                  var arr = arrs[i];

                  for(var j = 0; j < arr.length; j++){

                        document.write(arr[j] +"<br>");
                       
                      }
               }
            
    
}
        );
</script>

</head>
<body>
<%!
  public static final int [][]array_JD = new int[3][3];
%>

<%
  array_JD[0][0]=15;
  array_JD[0][1]=15;
  array_JD[0][2]=15;
  array_JD[1][0]=55;
  array_JD[1][1]=55;
  array_JD[1][2]=55;
  array_JD[2][0]=95;
  array_JD[2][1]=95;
  array_JD[2][2]=95;
  out.println(array_JD[2][2]);  
 //net.sf.json.JSONArray java的jar包
  JSONArray objlist = JSONArray.fromObject(array_JD);//转成json格式
  //保存到隐藏域
%>
<input id="arrs" type="hidden"  value = <%= objlist%> />
</body>
</html>