進入百度搜索此問題,發(fā)現(xiàn)有人這么說了一句
Jquery中的Ajax的async默認是true(異步請求),如果想一個Ajax執(zhí)行完后再執(zhí)行另一個Ajax, 需要把async=false就可以了
于時我在ajax中進行了處理
async: false,結(jié)果發(fā)現(xiàn)提交正常的數(shù)據(jù)返回是正常的沒有錯誤。
代碼如下
$.ajax({ type: "POST", async: false, url:urllink, data:data, dataType:"html", success:function(msg){ alert(data) }, error: function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); }, });
最后補充一點:
發(fā)送error可能有下面兩張引起的,或者其他程序問題,需要我們認真仔細。
1、data:"{}", data為空也一定要傳"{}";不然返回的是xml格式的。并提示parsererror.
jQuery ajax一直返回error的解答如下:
今天用ajax做異步刪除,碰到一個問題。 ajax能請求action并且執(zhí)行方法成功。但是一直返回error方法。糾結(jié)了半天。最也查閱了很多資料?;旧纤闶歉鞣N嘗試。就想換Ext了。
發(fā)現(xiàn)action中的方法有的是以get開始的。如果你仔細打印過ajax的返回的話,肯定會發(fā)現(xiàn),ajax返回的時候會獲取action中的所有的以get開始的方法,當然包括action中的方法。獲取后和其他的get方法不一樣。你懂得!這個時候ajax會報500的錯。ajax當狀態(tài)嗎到300的時候就會進error方法。
修改方法為:很簡單,把action中的以get開頭的方法修改成其他的例如;
public String getNetBut(){ bdiList=googleFlexDAO.getBuildingIpsById(araid.trim()); return SUCCESS; }
修改為:
public String findNetBut(){ bdiList=googleFlexDAO.getBuildingIpsById(araid.trim()); return SUCCESS; }
這樣就OK了!這個錯誤一般很難發(fā)現(xiàn),細心還是能發(fā)現(xiàn)滴!
好了,關于JQuery ajax中error返回錯誤及一直返回error的解答全部敘述完畢,希望大家喜歡。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com