jQuery中ajax和post处理json的不同示例对比
近日在做门户的用户评论时,好长时间没有用jquery了正好用一下,没想到偷工用了post方法去处理ajax回调的json数据,死活取不到,后台就是有json返回了。不料这么小小一个问题挂了我好几个小时,后来我ajax方法处理,居然ok,一比较发现原来post方法回调json必须eval一下,而ajax方法做了默认处理了。 望各位小心。
function haha() { jquery.post("addcomment!comment.action", function aa(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: function aa(data) { alert(data[0].userid); alert(data[0].username); } }); }
后台:
代码如下:
public string comment() {
try{
user u = new user("user", "koko");
list = new arraylist<user>();
list.add(u);
//map.put("id", userid);
// jsonobject jb = jsonobject.fromobject(list); // name:"+username +",
// info = jb.tostring();
system.out.println(list);
}
catch (exception e) {
e.printstacktrace();
}
return success;
}
配置:
代码如下:
<package name="ajax" extends="json-default">
<action name="addcomment" class="org.test.action.commentaction">
<result type="json">
<param name="root">list</param>
</result>
</action>
下一篇: NSTimer循环引用的几种解决方案