近日在做门户的用户评论时,好长时间没有用jquery了正好用一下,没想到偷工用了post方法去处理ajax回调的json数据,死活取不到,后台就是有json返回了。不料这么小小一个问题挂了我好几个小时,后来我ajax方法处理,居然OK,一比较发现原来post方法回调json必须eval一下,而ajax方法做了默认处理了。 望各位小心。。。
- function haha() {
- jQuery.post("addComment!comment.action",
- function aa(data) {
- data = eval(data);
- 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);
-
- 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>
- 。。。。。。
jQuery中ajax和post处理json的不同
原文:http://www.cnblogs.com/ranzige/p/4039429.html