jquery遍歷得到的 Map 資料,

CYLiberty發表於2019-01-08

關於action將map通過json傳回ajax遍歷的問題,以及jquery遍歷注意編碼方式

ajax遍歷map

在開發中,經常會遇到在頁面生成之後要根據介面操作動態更改頁面資料的問題,這種時候一般使用ajax。當資料比較豐富,我們從後臺用map將資料封裝傳回ajax時,使用js、jquery遍歷。

使用$.each(collection,function(key,value))

我這裡使用 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 字串:

相關文章