通常ajax請(qǐng)求返回的格式為json或者xml,如果返回的是json,則可以通過(guò)轉(zhuǎn)換成javascript對(duì)象進(jìn)行操作,如下:
1、ajax請(qǐng)求的controller實(shí)現(xiàn)
@RequestMapping
public void getLocations(@RequestParam String location, PrintWriter printWriter) {
if (StringUtils.isEmpty(location)) {
return;
}
List<Location> locations = locationService.getSubLocation(location);
String json = Json.toJson(locations);
printWriter.write(json);
printWriter.flush();
printWriter.close();
}
Location是包含多個(gè)屬性的Bean,如pName、zName。
2、ajax處理請(qǐng)求與返回值
$.ajax({
type : "GET",
url : "/admin/location/getLocations.do",
data : "location=" + val,
success : function(msg) {
msg = eval(msg);
region = $("#region");
region.empty();
vHtml = "<option value='none'>選擇區(qū)(可選)</option>";
$.each(msg, function(i) {
var $bean = msg[i];
vHtml += '<option value="' + $bean.pName + '"">'
+ $bean.zName + '</option>';
});
region.html(vHtml);
}
});
msg本來(lái)是一個(gè)json字符串,使用eval函數(shù)將字符串轉(zhuǎn)成了javascript對(duì)象,從而可以像對(duì)象那樣獲取屬性值了。
以上這篇一種Javascript解釋ajax返回的json的好方法(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考