首页 > 代码库 > 一种Javascript解释ajax返回的json的好方法

一种Javascript解释ajax返回的json的好方法

通常ajax请求返回的格式为json或者xml,如果返回的是json,则可以通过转换成javascript对象进行操作,如下:

1、ajax请求的controller实现

@RequestMappingpublic 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是包含多个属性的Bean,如pName、zName。

2、ajax处理请求与返回值

$.ajax({	type : "GET",	url : "/admin/location/getLocations.do",	data : "location=" + val,	success : function(msg) {		msg = eval(msg);		region = $("#region");		region.empty();		vHtml = "<option value=http://www.mamicode.com/‘none‘>选择区(可选)";		$.each(msg, function(i) {			var $bean = msg[i];			vHtml += ‘<option value="http://www.mamicode.com/‘ + $bean.pName + ‘"">‘					+ $bean.zName + ‘</option>‘;		});		region.html(vHtml);	}});

msg本来是一个json字符串,使用eval函数将字符串转成了javascript对象,从而可以像对象那样获取属性值了。

  

一种Javascript解释ajax返回的json的好方法