ホームページ  >  記事  >  ウェブフロントエンド  >  jquery_jquery の ajax で error を使用してエラーをデバッグする方法

jquery_jquery の ajax で error を使用してエラーをデバッグする方法

WBOY
WBOYオリジナル
2016-05-16 16:15:14825ブラウズ

この記事の例では、error を使用して jquery の ajax でエラーをデバッグする方法を説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。

JQuery を使用すると、Ajax アプリケーションの開発時に効率が向上し、多くの互換性の問題が軽減されます。Ajax の非同期データ取得中にエラーが発生した場合はどうすればよいでしょうか? エラー イベントをキャプチャしてエラーを取得できます。情報。

jquery での ajax の一般的な使用法は次のようになります。

$(document).ready(function() {
  jQuery("#clearCac").click(function() {
 jQuery.ajax({
   url: url,
   type: "post",
   data: { id: '0' },
   dataType: "json",
   success: function(msg) {
 alert(msg);
   },
   error: function(XMLHttpRequest, textStatus, errorThrown) {
 alert(XMLHttpRequest.status);
 alert(XMLHttpRequest.readyState);
 alert(textStatus);
   },
   complete: function(XMLHttpRequest, textStatus) {
 this; // 调用本次AJAX请求时传递的options参数
   }
 });
  });
});

ajax による非同期呼び出しが成功すると、success 関数が呼び出されます。成功関数の構文は次のとおりです:

 //请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态
 function (data, textStatus)
 {
  // data could be xmlDoc, jsonObj, html, text, etc...   
  this;
 // the options for this ajax request
 }

非同期 ajax 呼び出し中にエラーが発生すると、error 関数が呼び出されます。エラー関数の構文は次のとおりです:

//(默 认: 自动判断 (xml 或 html)) 请求失败时调用时间。
//参数有以下三个:XMLHttpRequest 对象、错误信息、(可选)捕获的错误对象。
//如果发生了错误,错误信息(第二个参数)除了得到null之外,
//还可能是"timeout", "error", "notmodified" 和 "parsererror"。
 
//textStatus: "timeout", "error", "notmodified" 和 "parsererror"。

error:function (XMLHttpRequest, textStatus, errorThrown) 
{ 
 
} 

エラー イベントによって返される最初のパラメータ XMLHttpRequest:
XMLHttpRequest.readyState: ステータスコードの意味
0 - (初期化されていない) send() メソッドはまだ呼び出されていません
1 - (ロード中) send() メソッドが呼び出され、リクエストが送信されています
2 - (ロード完了) send() メソッドが実行され、すべての応答コンテンツが受信されました
3 - (対話型) 応答コンテンツを解析します
4 - (完了) 応答コンテンツの解析が完了し、クライアントで呼び出すことができます

送信エラーの原因としては、以下の 2 つやその他の手順上の問題が考えられますので注意が必要です。
1. データ: "{}"。データが空の場合は、"{}" を渡す必要があります。それ以外の場合、返されるデータは XML 形式になります。そして、パーサーエラーを表示します。
2. parsererror の例外もヘッダー タイプに関連します。およびエンコーディング header('Content-type: text/html; charset=utf8');

この記事が皆さんの jQuery プログラミングに役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。