0

我有这段代码,基本上我有<input id="register_username" type="text" name="username">,我想检查用户是否已经存在于数据库中。当用户输入用户名时,代码可以完美运行,但有时某些浏览器(例如 Firefox)会为用户提供下拉菜单,让他们选择过去已经输入的一些值(例如他们的姓名)。问题是当从下拉菜单中选择用户名时,该keyup功能不起作用。我该如何解决这个问题?

$("#register_username").live('keyup', function() {

    $.post('scripts/register/register_check.php', {
        checkusername: $('#register_username').val()
    }, function(data) {
        if (data == "good") {
            //do something
        } else {
            //do the other thing
        }
    });
});​
4

2 回答 2

1

从自动完成下拉列表中选择一个选项后,我不认为所有浏览器都会触发事件。

您最好的选择是使用.change()在元素失去焦点后触发的。例如,当用户选择自动完成选项并转到下一个字段时。

于 2012-12-28T13:46:09.230 回答
0

每当字段失去焦点时,我都会使用onblur事件触发。

于 2012-12-28T13:50:25.873 回答