AJAX完整操作

$("#btn1").click(function () {
        $.ajax({
            url: "ajax/login.ashx",  //请求访问的服务端地址
            data: { "uname": $("#txt1").val(), "pwd": $("#txt2").val() }, //请求访问服务端所传递过去的数据
            dataType: "json", //服务端返回的数据格式
            type: "post",     //向服务端发送数据的方式
            async: true,      //是否开启异步
            success: function (msg) {   //服务端执行完毕并成功后执行的代码段
                if (msg.ok == '0') $("#sp1").text('未查到此用户');
                else $("#sp1").text('用户名密码正确');
            }, error: function () {     //服务端出错所执行的代码段
                $("#sp1").text('err');
            }, beforeSend: function () {   //发送请求之前执行的代码段
                $("#sp1").text('加载中...');
                $("#btn1").attr('disabled', 'disabled');
            }, complete: function () {     //本次所有流程执行完毕之后的再执行的代码段
                $("#sp1").text('');
                $("#btn1").removeAttr('disabled');
            }
        });
    });

先执行的是beforeSend
然后再走success或者error
最后执行complete
四个回调函数都得写,报错的时候可以找到出错点,sp1是div的一个<span></span>标签
原文地址:https://www.cnblogs.com/yunpeng521/p/7458781.html