jquery post 同步异步总结

巴扎黑
巴扎黑 原创
2018-05-10 16:48:03 1793浏览

最近在测试,发现有些效果不对,最后发现是post的执行顺序问题,所以研究了下,写了以下总结

1.post被请求多次,解决方法:

连接加入随机数 rand=""+Math.random()

$.post("/Control/webControl.ashx?rand ="+Math.random(), { Method: "LoginIn", Parems: ps }, function (data, textStatus) {
                $("#pOver").css("visibility", "hidden");                switch (data) {                    case "1":
                        window.location = '/default.aspx';                        break;                    case "0":
                        $("#tips").text("找不到该用户");
                        u.focus();
                        changevcode();
                        errcount++;                        break;                    case "-1":
                        $("#tips").text("用户或密码错误");
                        changevcode();
                        c.val("").focus();
                        errcount++;                        break;                    default:
                        alert(data);
                }
            });

2.因为post默认为异步请求,可是有时候我们会发现,本来要求请求马上出现,可是异步会导致后面突然再执行,这样就出问题了

所以,我们需要加入

$.ajaxSetup({   
            async : false  
        });

3.如果需要有些同步有些异步,那么我们应该使用最原始的ajax请求,然后把async设置为false

$.ajax({  
         type : "post",  
          url : "register/RegisterState",  
          data : "test=" + test,  
          async : false,  
          success : function(data){  
            data = eval("(" + data + ")");  
            aDataSet = data;  
          }  
     });

以上就是jquery post 同步异步总结的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。