jQuery(バージョン1.6.4を使用しています)のAJAX呼び出しによって返される可能性のあるHTTPステータスエラー(404、501など)を適切に処理しようとしていますが、私の人生の間、私は抜け出すことができません適切な応答コード(すべての値は「0」または「エラー」であり、これ以上具体的なものはありません)。
更新:ここでJSFIDDLEを作成しました
更新:statusCode: { *** }
3nigmaの提案に従って追加されましたが、起動しません
<!DOCTYPE html><html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript">
function doAjax()
{
$.ajax({
type: "GET",
url: "http://www.non-existant-url.com/",
success: function(data, textStatus, jqXHR){
alert("Success");
},
error: function (xhr, textStatus, errorThrown) {
console.log("xhr.status: " + xhr.status);
console.log("xhr.statusText: " + xhr.statusText);
console.log("xhr.readyState: " + xhr.readyState);
console.log("xhr.responseText: " + xhr.responseText);
console.log("xhr.responseXML: " + xhr.responseXML);
console.log("textStatus: " + textStatus);
console.log("errorThrown: " + errorThrown);
console.log("xhr.redirect: " + xhr.redirect);
},
statusCode: {
404: function () { console.log("404"); },
501: function () { console.log("501"); },
502: function () { console.log("502"); }
}
});
}
</script>
</head>
<body><button onclick="doAjax();">Do AJAX</button></body>
</html>
私が得る出力は次のとおりです。
参考までに私はでドキュメントを勉強しました...
http://api.jquery.com/jQuery.ajax/ ( "error(jqXHR、textStatus、errorThrown)"セクション) http://api.jquery.com/jQuery.ajax/#jqXHR
しかし、jqXHRは適切に入力されていないようです。私は何か間違ったことをしているに違いありません、そして私は今アイデアを使い果たしたので、私は本当にいくつかの助けをいただければ幸いです。ありがとう!