jQuery Ajax Post 回调函数不执行怎么办


本文摘自PHP中文网,作者coldplay.xixi,侵删。

回调的JSON数据格式问题,导致回调函数一直无法执行;jQuery Ajax Post 回调函数不执行的解决办法:JSON数据都要用双引号,使用转义字符转义String,代码为【{\"hello\":\"world\"}】。

本教程操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑,该方法适用于所有品牌电脑。

推荐:jquery视频教程

jQuery Ajax Post 回调函数不执行的解决办法:

1、前台代码

1

2

3

4

5

6

7

8

9

10

$.post('${pageContext.request.contextPath}/user_deleteUser',{uid:row.uid},function(result){

                            if (result.errorMsg){

                                $.messager.show({   

                                    title: 'Error',

                                    msg: result.errorMsg

                                });

                            } else {

                                $('#dg').datagrid('reload');   

                            }

                        },'json');

2、后台代码

1

2

3

4

5

6

7

8

9

10

11

public String deleteUser() {

        int count = userDao.deleteUser(model.getUid());

        try {

            PrintWriter writer = response.getWriter();

            if(count<=0) writer.write("{'errorMsg':'删除失败'}");

            else writer.write("{'success':'删除成功'}");

        } catch (IOException e) {

            e.printStackTrace();

        }

        return null;

    }

很明显前台代码并没有什么问题,后台代码在逻辑上貌似也没什么问题,最后百度得知回调的JSON数据格式问题,导致回调函数一直无法执行,原来JSON数据都要用双引号!

1

2

我的:{'hello':'world'}

标准:{"hello":"world"}

由于String不能双引号嵌套使用所以我们用转义符即可

1

{\"hello\":\"world\"}

大功告成!

相关免费学习推荐:js视频教程

以上就是jQuery Ajax Post 回调函数不执行怎么办的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

jQuery中的on()和click()区别是什么

深入了解jQuery和vue的区别(附代码)

jQuery css()和attr()的区别是什么

jQuery input不可编辑的实现方法

如何用jQuery实现闪烁文字效果

jQuery怎么给div赋值

jQuery怎么判断数组是否为空?

jQuery框架和bootstrap框架区别

jQuery如何获取文字的宽度?方法介绍

jQuery怎么获取元素的坐标?

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...