在开发中,经常会遇到在页面生成之后要根据界面操作动态更改页面数据的问题,这种时候一般使用ajax。当数据比较丰富,我们从后台用map将数据封装传回ajax时,使用js、jquery遍历。
我这里使用 ajax
请求成功,得到的是一个Map<String, Map<String,Course>> 类型的Map,在success中可以使用jquery进行遍历如下.
success:function(data){
var sch = data.schedule;
$.each(sch,function(key,values){//每一行
var tr = "<tr>";
tr = tr+"<td>"+key+"</td>";//节次
$.each(values,function(key,value){
tr = tr + "<td>"+value.cName+"</td>";
});
tr = tr + "</tr>";
$("table").append(tr);
})
},
如果你的map中有中文字符数据的话,最好在Action的请求方法,使用response写响应数据时,设置response的编码方式
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=UTF-8");
也可以在前端用 JSON.parse()
方法解析 json 字符串: