ホームページ > 記事 > ウェブフロントエンド > jquery_jquery の ajax で error を使用してエラーをデバッグする方法
この記事の例では、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 プログラミングに役立つことを願っています。