ajax readyState=4並且status=200時,還進error方法


 

今天在使用jQuery.ajax方法去調用后台方法時,ajax中得參數data類型是"JSON",后台DEBUG調試,運行正常,

返回正常的結果集,但是前端一直都進到ajax的error方法,百思不得其解,后要一探究竟,在error方法的參數中加了data后,發現data中的readyState = 4 並且 status=200,

這兩個狀態也證明ajax訪問沒有問題,沒有出現異常。回過頭發現我在后台返回的是字符串,但並不是標准的json格式的字符串,所以前端js進入不了success。

無法解析為json格式的數據,所以報錯進error。

通過后台將結果集轉成json格式字符串即可。或者將data類型改為“text”

 

        function ajaxUpdate(content,key) {
            $.ajax({
                async:true,
                type: "POST",
                url: "*******************",
                data: {content:content,key:key},
                dataType: "text",
                success: function(data){
                    alert(data);
                },error:function (XMLHttpRequest) {
                    alert("error"+XMLHttpRequest.status+"---"+XMLHttpRequest.readyState);

                }
            });
        }

  

 


免責聲明!

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



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