ajax リクエストを作成する次のコードがあり、成功イベントとエラー イベントの両方が呼び出されています。これは、Opera と Chrome では断続的に発生しますが、IE8 では発生しません (確認するために最新のバージョンにアクセスすることはできません)。textStatus パラメーターはエラーを示していますが、errorThrown パラメーターは空です。responseHeader がヌルです。
$.ajax({
type: "POST",
url: "ajax/check_login.php",
data: $(form).serialize() + "&session_key=<?php echo session_id(); ?>" + "&role=" + refer,
timeout: 3000,
success: function(resp) {
if (resp == 'error') {
$('#login_error').html('Invalid login');
} else {
if (refer == 'customer') {
self.location='book-mot.php';
} else {
self.location='admin.php';
}
}
},
error: function (request, textStatus, errorThrown) {
alert(request.getResponseHeader('Status'));
alert('text status: ' + textStatus + ' errorThrown: ' + errorThrown);
}
});
return false;
}
});
このコードは、ログインが成功するとユーザーを適切な場所にリダイレクトしますが、最初にエラー関数からの警告ボックスを表示します。
あなたが与えることができるどんな助けにも感謝します