1. 程式人生 > >Ajax的錯誤除錯

Ajax的錯誤除錯

Ajax專案中,遇到ajax非同步獲取資料出錯的時候,我們可以通過捕捉error事件來獲取出錯的資訊,可能是404資源不存在,也可能是跨域請求,也可能是程式碼格式錯誤等等。

$(function(){
      $.ajax({
            type: "get",
            url: "./zwfw/bsjggg/bjgg.json",
            async:false,
            dataType: "json",
            success: function (data) {
                $.each(data.appoint,function(i, item) {
                    if(i==0){
                        $("#bjgg1 table").append("<tbody></tbody>");
                    }
                    if(i>11){
                        return;
                    }
                    var sqrmc = item.sqrmc;
                    if(item.sqrmc !=""&&null!=item.sqrmc ){
                        if(item.sqrmc.length > 9){
                           sqrmc =item.sqrmc.substring(0,8)+"...";
                        }
                    }
 
                    var sbxmmc = item.sbxmmc;
                    if(item.sbxmmc!=""&&null!=item.sbxmmc){
                        if(item.sbxmmc.length > 13){
                           sbxmmc=item.sbxmmc.substring(0,12)+"...";
                        }
                    }
                    var sbzt = "";
                    if(item.sbzt!=""&&null!=item.sbzt){
                        switch(item.sbzt){
                            case "0":
                                sbzt = "暫存";
                                break;
                            case "1":
                                sbzt = "正在申請";
                                break;
                            case "2":
                                sbzt = "正在申請";
                                break;
                            case "3":
                                sbzt = "已退回";
                                break;
                            case "4":
                                sbzt = "需補交材料";
                                break;
                            case "5":
                                sbzt = "掛起告知";
                                break;
                            case "6":
                                sbzt = "需補交登記";
                                break;
                            case "8":
                                sbzt = "辦結告知";
                                break;
                            case "9":
                                sbzt = "已辦結";
                                break;
                            default:
                                "正在申請";
                        }
                    }
                    
                    $("#bjgg1 table tbody").append("<tr>"+
                                          "<td width='30%'>"+sqrmc+"</td>"+
                                          "<td width='50%'>"+sbxmmc+"</td>"+
                                          "<td width='20%'>"+sbzt+"</td>"+
                                      "</tr>");
                    
                });
                
                      

            },
          error:function(XMLHttpRequest, textStatus, errorThrown){
                alert(XMLHttpRequest.status);
                alert(XMLHttpRequest.readyState);
                alert(textStatus);
            }

        });


當通過ajax非同步呼叫成功時,會呼叫 success函式 。success函式語法為:

//請求成功後回撥函式。這個方法有兩個引數:伺服器返回資料,返回狀態   function (data, textStatus)
{
 // data could be xmlDoc, jsonObj, html, text, etc...  
 this;
// the options for this ajax request
}
當通過ajax非同步調用出錯時,會呼叫 error函式 。error函式語法為:
//(默 認: 自動判斷 (xml 或 html)) 請求失敗時呼叫時間。
//引數有以下三個:XMLHttpRequest 物件、錯誤資訊、(可選)捕獲的錯誤物件。
//如果發生了錯誤,錯誤資訊(第二個引數)除了得到null之外,
//還可能是"timeout", "error", "notmodified" 和 "parsererror"。
 
//textStatus: "timeout", "error", "notmodified" 和 "parsererror"。
 
error:function (XMLHttpRequest, textStatus, errorThrown){
 
}

error事件返回的第一個引數XMLHttpRequest:
XMLHttpRequest.readyState: 狀態碼的意思
0 - (未初始化)還沒有呼叫send()方法
1 - (載入)已呼叫send()方法,正在傳送請求
2 - (載入完成)send()方法執行完成,已經接收到全部響應內容
3 - (互動)正在解析響應內容
4 - (完成)響應內容解析完成,可以在客戶端呼叫了


 傳送error可能有下面兩張引起的,或者其他程式問題,需要我們認真仔細。

1、data:"{}", data為空也一定要傳"{}";不然返回的是xml格式的。並提示parsererror.

2、parsererror的異常和Header 型別也有關係。及編碼header('Content-type: text/html; charset=utf8');
 



相關推薦

Ajax錯誤除錯

Ajax專案中,遇到ajax非同步獲取資料出錯的時候,我們可以通過捕捉error事件來獲取出錯的資訊,可能是404資源不存在,也可能是跨域請求,也可能是程式碼格式錯誤等等。 $(function(){ $.ajax({ type: "ge

JQuery.Ajax錯誤除錯幫助資訊

下面是Jquery中AJAX引數詳細列表:引數名型別描述urlString(預設: 當前頁地址) 傳送請求的地址。typeString(預設: "GET") 請求方式 ("POST" 或 "GET"), 預設為 "GET"。注意:其它 HTTP 請求方法,如 PUT 和 DE

jQuery Ajax錯誤除錯幫助資訊

下面是Jquery中AJAX引數詳細列表: 引數名 型別 描述 url String (預設: 當前頁地址) 傳送請求的地址。 type String (預設: "GET") 請求方式 ("POST" 或 "GET"), 預設為 "GET"。注意 :其它

$.ajax 錯誤信息

狀態 ack 狀態碼 span call success alert erro request $.extend({ getHtml:function(url,callback){ $.ajax({

Ajax錯誤 “SCRIPT7002: XMLHttpRequest: 網絡錯誤 0x2ef3, 由於出現錯誤 00002ef3 而導致此項操作無法完成” 的歸納總結

pan 分享 XML 如果 toolbar .cn 判斷 發送 導致 最近在做Asp.net項目的時候,用Ajax訪問服務器數據有時候老是莫名其妙的報錯:SCRIPT7002: XMLHttpRequest: 網絡錯誤 0x2ef3, 由於出現錯誤 00002ef3 而導致

SSD講堂五(訓練)_錯誤除錯:failed to allocate 4.75G (5102921216 bytes) from device: CUDA_ERROR_OUT_OF_MEMORY

原文:https://blog.csdn.net/strive_for_future/article/details/81292865?utm_source=copy 1)需要指定GPU,程式碼頭部新增如下程式碼: import os os.environ["CUDA_VISIBLE_DEV

Windows 下錯誤除錯: WinError 5: Acess is denied 和 ImportError: numpy.core.multiarray failed to import

1.Python在刪除pillow,操作時出現 WinError 5: Acess is denied 原因:刪除檔案沒有許可權,需要獲得管理員許可權 解決方案:(1)右鍵開啟cmd,點選以管理員身份執行;       &nbs

Python的錯誤除錯以及單元測試unittest

錯誤處理: 程式執行的過程中如果發生了錯誤,就可以事先約定返回一個錯誤程式碼,但是用錯誤碼錶示是否出錯十分的不方便,所以高階語言通常都內建了一套try...except...finally的錯誤處理機制,Python也有這樣的錯誤處理機制: try: print('try..

小白學python之錯誤除錯測試簡介_學習筆記

本文以廖雪峰的官方網站為參考來學習python的。其學習連結為廖雪峰小白學python教程。 本學習筆記僅供參考。 筆記: 在程式執行過程中,總會遇到各種各樣的錯誤。 (1)程式編寫有問題造成的。 (2)使用者輸入造成的。 (3)還有一類錯誤是完全無法再程式執

錯誤除錯

try、、except。。finally 錯誤型別有欽定,比如ZeroDivisionError(除以零錯誤)、ValueError 值型別失誤 (另外錯誤可以用 “as e”來賦值,except ValueError as e 是固定語法——理解是因為每個錯誤互不交叉,所以雖然都是用“e”

ajax錯誤處理 net::ERR_CONNECTION_REFUSED

請求伺服器停掉的時候,瀏覽器會提示net::ERR_CONNECTION_REFUSED jquery事件三種回撥事件:success成功 error錯誤 complete只要請求完成,無論返回成功還是失敗 試圖捕獲這類錯誤,經測試,它會出現在error邏輯中,error回

Segmentation fault段錯誤除錯總結

Segmetation fault也叫做段錯誤,引發的原因有好多,這裡我們只說一下段錯誤發生時的除錯方法。 方法1:加列印printf。這是最基本的往往也很有效的方法,在哪裡Core掉就會在哪裡停止列印--一目瞭然。同時這種方法也存在一個致命缺陷:如果恰巧Core掉的地方沒

關於org.mybatis.spring.MyBatisSystemException:Parameter 'userId' not found. 錯誤除錯

private static final long serialVersionUID = 1826023156097338963L; private String userId; //使用者ID private String id; //帖子ID private String ggTitle; // 公

chrome ajax response 除錯 亂碼問題

最近介面改版,debug的時候檢視返回,其中包含中文的,發現用介面測試工具或者抓包都沒亂碼,唯獨在chrome的除錯下會亂碼 看了一下返回報文,發現是少了這個報頭Content-Type 讓後臺設定返

nginx前臺啟動-段錯誤除錯

nginx.conf中 daemon on|off master_process on|off 在除錯Nginx功能的時候,出現如下問題: 2017/02/27 16:23:50 [notice] 13604#0: signal 17 (SIGCHLD) rece

編譯opencv程式錯誤除錯集合

持續更新中…… ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1,提示:Debug Assertion Faile

php開發--yii2框架內錯誤除錯總結

1、$this->error();model驗證錯誤,yii提供的最常用的除錯方法 2、列印原始sql,在除錯sql問題的情況下特別管用,看看自己寫的sql是否有問題 $query = new Books::find()->where('author=2');

解決VS彈出錯誤除錯框解決辦法。

最近遇到一個問題,伺服器因為一個vc6.0的彈窗問題導致伺服器奔潰如下圖在網上找了一個辦法但是並沒有用HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\DebuggerHKEY_LO

SocketLog-微信除錯、API除錯AJAX除錯的工具,能將日誌通過WebSocket輸出到Chrome瀏覽器的console中

說明 SocketLog適合Ajax除錯和API除錯, 舉一個常見的場景,用SocketLog來做微信除錯, 我們在做微信API開發的時候,如果API有bug,微信只提示“改公眾賬號暫時無法提供服務,請稍候再試” ,我們根本不知道API出來什麼問題。 有了Sock

VB的靈魂—錯誤除錯

這是在CSDN上寫的第一篇文章,心情有點小激動和小緊張,感覺一定要寫特別重要的東西,仔細想了想,到底什麼才是特別重要的呢??思來想去,只有錯誤是不斷髮生,同時我們也是不斷在改正,錯誤除錯貫穿學習VB的