jQuery中ajax和post处理json的不同示例对比
近日在做门户的用户评论时,好长时间没有用jquery了正好用一下,没想到偷工用了post方法去处理ajax回调的json数据,死活取不到,后台就是有json返回了。不料这么小小一个问题挂了我好几个小时,后来我ajax方法处理,居然OK,一比较发现原来post方法回调json必须eval一下,而ajax方法做了默认处理了。望各位小心。
functionhaha(){
jQuery.post("addComment!comment.action",
functionaa(data){
data=eval(data);//POST方法必加,ajax方法自动处理了
alert(data[0].userId);
alert(data[0].userName);
},
"json"
);
jQuery.ajax({
type:"post",
url:"addComment!comment.action",
dataType:"json",
success:functionaa(data){
alert(data[0].userId);
alert(data[0].userName);
}
});
}
后台:
publicStringcomment(){
try{
Useru=newUser("user","koko");
list=newArrayList<User>();
list.add(u);
//map.put("id",userId);
//JSONObjectjb=JSONObject.fromObject(list);//name:"+userName+",
//info=jb.toString();
System.out.println(list);
}
catch(Exceptione){
e.printStackTrace();
}
returnSUCCESS;
}
配置:
<packagename="ajax"extends="json-default"> <actionname="addComment"class="org.test.action.CommentAction"> <resulttype="json"> <paramname="root">list</param> </result> </action>