我还有另一个问题。我在FireFox中遇到错误而且我不知道我的错是什么。我总是这样做,我从来没有错过。我已经检查了大/小写错误,但我找不到任何东西。
由于
$ .ajax({type:&#34; POST&#34;,url:&#34; ajax / check_username.php&#34;,data:{username:username}})。done不是函数< / p>
<script type="text/javascript">
$(document).ready(function(){
$("#username").keyup(function(){
var username = $("#username").val();
$(".usernameFeedback").fadeIn("fast");
$.ajax({
type: "POST",
url: "ajax/check_username.php",
data: { username: username }
}).done(function( msg ) {
$("#loadingImage").hide();
if(msg.status != "error")
{
if(msg.available == "yes")
{
$(".usernameFeedback span").text(msg.message);
$(".usernameFeedback span").removeClass("notok");
$(".usernameFeedback span").addClass("ok");
}
else
{
$(".usernameFeedback span").text(msg.message);
$(".usernameFeedback span").addClass("notok");
}
}
});
return(false);
})
});
</script>
答案 0 :(得分:17)
可能你的jQuery版本太旧了。您至少需要jQuery 1.5 for jqXHR对象来实现您正在使用的 Promise 接口。
如果由于某种原因无法升级,只需使用success
选项:
$.ajax({
type: "POST",
url: "ajax/check_username.php",
data: { username: username },
success: function(msg) {
}
});