我使用的是jquery 1.11.3。我尝试使用ajaxComplete.It只显示加载图标而不返回错误消息,仅在控制台中。正如我在这里读到的那样:
http://www.w3schools.com/jquery/ajax_ajaxcomplete.asp
注意:从jQuery版本1.8开始,此方法只应附加到文档。
但是如何在我的情况下使用它?
我的代码是:
$(document).ready(function() {
$("#email").change(function() {
var usr = $("#email").val();
if (usr.length >= 3) {
$("#status").html('<img align="absmiddle" src="/images/loader.gif" /> Checking availability...');
$.ajax({
type: "POST",
url: "/check_user.php",
data: "email=" + usr,
success: function(msg) {
$("#status").ajaxComplete(function(event, request, settings) {
if (msg == 'OK') {
$("#email").removeClass('ErrorField'); // if necessary
$("#email").addClass("object_ok");
$(this).html('');
$("#submit").attr("disabled", false);
} else {
$("#email").removeClass('object_ok'); // if necessary
$("#email").addClass("ErrorField");
$(this).html(msg);
$("#submit").attr("disabled", true);
}
});
}
});
} else {
$("#email").removeClass('object_ok'); // if necessary
$("#email").addClass("ErrorField");
}
});
});
&#13;
答案 0 :(得分:1)
你不需要在AJAX success
函数中使用AJAX Complete。将您的代码更改为:
$("#status").html('<img src="/images/loader.gif" /> Checking ...');
$.ajax({
type: "POST",
url: "/check_user.php",
data: "email=" + usr,
success: function(msg) {
// Remove this completely
// $("#status").ajaxComplete(function(event, request, settings) {
if (msg == 'OK') {
$("#email").removeClass('ErrorField');
$("#email").addClass("object_ok");
$(this).html('');
$("#submit").attr("disabled", false);
} else {
$("#email").removeClass('object_ok');
$("#email").addClass("ErrorField");
$(this).html(msg);
$("#submit").attr("disabled", true);
}
});
// And this too.
// }
});