Jquery处理JSON数据类型
使用jquery.autocomplete.js和Spring时,jquery.autocomplete.不能解析数据库返回的json。(如果报告406错误,请添加 Jackson jar包)。如果返回值改为String,则可以。因此查看一下源码:
现象如下:
如果使用response,可以显示:
w= "{query:'m',suggestions:['a','b','c'],data:['1','2','3']}";out = response.getWriter();out.print(w);return w;
@RequestMapping(value = { "/ajax/", "/ajax" }, method = RequestMethod.GET)@ResponseBodypublic Map<String, Object> load(@RequestParam(value = "query") String name) {Map<String, Object> map = new HashMap<String, Object>();map.put("query", name);map.put("suggestions", suggestions);map.put("data", data);return map;}a = eval("(" + b + ")")a=b;
var dataObj=eval("("+data+")");//转换为json对象alert(eval("{}"); // return undefinedalert(eval("({})");// return object[Object]data =(new Function("","return "+json))();