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

controller传递一个数组参数到JSP,JSP中如何用JS读取
好像用JSON可以。没用过。希望高人给点指点

controller ,names是一个String[]数组
Java code
contextValue.put("names",names);



jsp中如何用JS得到呢?希望您用代码表示,不要文字描述

------解决方案--------------------
public JSONObject test() {
JSONObject resp = new JSONObject();
JSONArray list = new JSONArray();
String[] names{"1","2","3","4","5"};
for(String name:names){
JSONObject row = new JSONObject();
row.put("s_",name);
list.put(row);
}
resp.put("data",list);
}
------解决方案--------------------
后台将数组names转出json,然后页面上获取json的值。
------解决方案--------------------
可以在jsp页面上用
JScript code

 var yourString='${names}';

------解决方案--------------------
而你自己放一个java数据到contextValue对象中是不行了,可以先在后台将你的数组转换成json格式的,如果用springMVC 可以加一个注解,具体的楼主可以去soso。
------解决方案--------------------
如果alert出来是undefined就是出错了,
这个问题了逻辑是什么聂;就是把你的数组转换成一个json的字符串,如下
yourArray=“[1,2,3]”;
将那个字符串放到 request中去,然后js将这个字符串["a","b","a"]
转化成json对象,如果是undefined,
错误可能出在,你的数组就是空的,要把你的数组转换成字符串,且是符合json格式的字符串