進(jìn)入百度搜索此問題,發(fā)現(xiàn)有人這么說了一句
Jquery中的Ajax的async默認(rèn)是true(異步請求),如果想一個(gè)Ajax執(zhí)行完后再執(zhí)行另一個(gè)Ajax, 需要把a(bǔ)sync=false就可以了
于時(shí)我在ajax中進(jìn)行了處理
async: false,結(jié)果發(fā)現(xiàn)提交正常的數(shù)據(jù)返回是正常的沒有錯(cuò)誤。
代碼如下
$.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);},});
最后補(bǔ)充一點(diǎn):
發(fā)送error可能有下面兩張引起的,或者其他程序問題,需要我們認(rèn)真仔細(xì)。
1、data:"{}", data為空也一定要傳"{}";不然返回的是xml格式的。并提示parsererror.
jQuery ajax一直返回error的解答如下:
今天用ajax做異步刪除,碰到一個(gè)問題。 ajax能請求action并且執(zhí)行方法成功。但是一直返回error方法。糾結(jié)了半天。最也查閱了很多資料。基本上算是各種嘗試。就想換Ext了。。
發(fā)現(xiàn)action中的方法有的是以get開始的。如果你仔細(xì)打印過ajax的返回的話,肯定會發(fā)現(xiàn),ajax返回的時(shí)候會獲取action中的所有的以get開始的方法,當(dāng)然包括action中的方法。獲取后和其他的get方法不一樣。你懂得!這個(gè)時(shí)候ajax會報(bào)500的錯(cuò)。ajax當(dāng)狀態(tài)嗎到300的時(shí)候就會進(jìn)error方法。
修改方法為:很簡單,把a(bǔ)ction中的以get開頭的方法修改成其他的例如;
public String getNetBut(){ bdiList=googleFlexDAO.getBuildingIpsById(araid.trim()); return SUCCESS; }
修改為:
public String findNetBut(){ bdiList=googleFlexDAO.getBuildingIpsById(araid.trim()); return SUCCESS; }
這樣就OK了!這個(gè)錯(cuò)誤一般很難發(fā)現(xiàn),細(xì)心還是能發(fā)現(xiàn)滴!
好了,關(guān)于JQuery ajax中error返回錯(cuò)誤及一直返回error的解答全部敘述完畢,希望大家喜歡。
新聞熱點(diǎn)
疑難解答
圖片精選