jQuery ajax 當async為false時解決同步操作失敗的問題


jQuery的ajax,當async為false時,同步操作失敗。解決方案,jqueryasync

                   最近做項目遇到jQuery的ajax,當async為false時,同步操作失敗的問題,上網搜索下,得到解決辦法,這里就說下如何解決:

引發失敗時代碼:

 $.ajax({
        url : 'your url',
        data:{name:value},
        cache : false, 
        async : true,
        type : "POST",
        dataType : 'json/xml/html',
        success : function (result){
          return result;
        }
      });

解決方案:

 var ret = null;
$.ajax({
        url : 'your url',
        data:{name:value},
        cache : false, 
        async : true,
        type : "POST",
        dataType : 'json/xml/html',
        success : function (result){
          ret=result;
        }
      });
return ret;

說明:
不要在success的回調函數中直接return,具體原因后面在考察!!

$ajax()設置同步提交無效,代碼如下,設置了async:"false" 但還是異步提交的

ajax本來的目的就是進行異步操作, 而且最新的jQuery版本甚至已經棄用了async參數.

如果你只是想利用ajax做服務器的交互,不需要異步刷新效果,那可以用回調函數.

jquery $ajax函數,中的async: "false", 不起作用幫忙看看

"false" 加了雙引號就是字符串了,非空串就為true。

去掉雙引號。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM