首先,你说的是后台传来,并且是map,并且用js方式。这有两个情况:
map 的值是实体类,无法遍历每条实体类的内部(js拿到键值对的值,是内存引用地址)
map 的值不是实体类,可以通过
var map = JSON.parse('${变量名}');//转为json,注意要有引号
for ( var i in map) { // i是索引
var obj = map[i]
}
=============
针对第一种情况,2个方法:
1. 后台先转为json字符串,再传给前端;
2. 通过类似java的<c:foreach这样的后台语言操作。
var map = new HashMap()map.put("a","1")
map.put("b","2")
遍历:
var key = map.keySet()
for (var i in key){
alert(map.get(key[i]))
}
注:js 中使用map,要先导入一个HashMap.js文件
没要求,引入这个文件之后,可以直接使用hashmap了
LS说的对,在后台将map集合转为json格式(可以使用谷歌的Gson jar包,没有百度一个)map.put("list",list)
Gson gson = new Gson()
String json=gson.toJson(map).toString()
转为json 后,界面js操作
var obj=eval("("+json+")")
var o=obj.list
for(var i=0i<o.lengthi++){