跟大家講解下有關完美解決ajax跨域請求下parsererror的錯誤,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說完美解決ajax跨域請求下parsererror的錯誤,小編也收集到了有關完美解決ajax跨域請求下parsererror的錯誤的相關資料,希望大家看到了會喜歡。
下面我就為大家帶來一篇完美解決ajax跨域請求下parsererror的錯誤。現在就分享給大家,也給大家做個參考。parser error是什么意思?
ajax請求報parsererror錯誤是很寬泛的概念,很多情況下都報這個錯,
在很多時候,即使ajax提交、返回都正常
XMLHttpRequest.status=200 (正常響應)
XMLHttpRequest.readyState=4 (正常接收)
ajax也會提示一個parseerror的錯誤.
出現這個錯誤,大都是不良書寫習慣,或者語法不當造成的.
關于ajax的錯誤,請使用:
error:function(XMLHttpRequest, textStatus, errorThrown){ $("p").html(textStatus); $("p").append("<br/>"XMLHttpRequest.status); $("p").append("<br/>"XMLHttpRequest.readyState); $("p").append("<br/>"XMLHttpRequest.responseText);}或:
$("p").ajaxError(function(event,request, settings){ $(this).append("<li>出錯頁面:" + settings.url + "</li>");});取得錯誤相關信息,以進行分析.
textStatus返回除了得到null,"timeout", "error", "notmodified" 和 "parsererror"。
XMLHttpRequest對象可以使用status,readyState,responseText等屬性取得HTTP代碼,處理狀態和服務器返回的文字內容.
在使用ajax,以及相關應用開發過程中,一定要按標準寫程序,可以減少出錯的機率.
這個標準包括語法,數據格式,標點符號等.
ajax跨請求中,如果data為空,請使用;
data:"{}",
ajax處理服務器返回Json格式數據時,如果采用$.parseJSON()方式,
那么服務器返回的Json數據格式,一定按標準Json格式書寫,
對字符而言必須用雙引號代替單引號包圍,數值,布爾類型,null不用,
這點主要在一些老的jquery版本上發生單引號,雙引號的不同而出現錯誤提示.
ajax跨域請求(jsonp)中,服務端返回數據格式必須是:
myCallbackFunction({"id":1,"name":"C#","is_familiar":true});
請注意這個函數最后的分號";",必須加上,
否則,如果同一個頁面有多個ajax請求,并且在數據沒有返回時,再發出其它ajax請求時,
有可能出現parsererror出錯提示.
這種錯誤很隱敝,在開發時,不容易發現,在并發測試時,就很容易暴露出.
上面是我整理給大家的,希望今后會對大家有幫助。
相關文章:
AJAX +SpringMVC 實現bootstrap模態框的分頁查詢功能
ajax提交手機號去數據庫驗證并返回狀態值
Ajax動態為下拉列表添加數據的實現方法
以上就是完美解決ajax跨域請求下parsererror的錯誤的詳細內容,更多請關注php中文網其它相關文章!
來源:php中文網