11

我还有一个问题。我在 FireFox 中遇到错误,我不知道我的错是什么。我总是这样做,我从来没有出错。我已经检查了小写/大写错误,但我找不到任何东西。

谢谢

$.ajax({type: "POST", url: "ajax/check_username.php", data: {username: username}}).done 不是函数

<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>
4

1 回答 1

17

可能您的 jQuery 版本太旧了。对于 jqXHR 对象,您至少需要 jQuery 1.5 才能实现您正在使用的Promise接口。

如果由于某种原因无法升级,只需使用以下success选项:

$.ajax({
    type: "POST",
    url: "ajax/check_username.php",
    data: { username: username },
    success: function(msg) {

    }
});
于 2012-05-02T15:31:19.800 回答