Jquery用户名检查

时间:2010-04-19 17:15:27

标签: jquery

我正在使用此Jquery函数进行可用的用户名检查。

如果用户名字段大于5个字符,我该如何触发此Jquery函数?

Jquery看起来像:

$(document).ready(function() {
$('#usernameLoading').hide();
$('#username').blur(function(){
$('#usernameLoading').show();

$.post("usercheck.php", {
un: $('#username').val()
}, function(response){
$('#usernameResult').fadeOut();
setTimeout("finishAjax('usernameResult', '"+escape(response)+"')", 400);
});
return false;
});
});

function finishAjax(id, response) {
$('#usernameLoading').hide();
$('#'+id).html(unescape(response));
$('#'+id).fadeIn();
} //finishAjax

我可以使用这样的东西以及如何:

var usr = $("#username").val();
if(usr.length >= 5)
{   
}

4 个答案:

答案 0 :(得分:3)

$(document).ready(function() {

    $('#usernameLoading').hide();

    $('#username').blur(function(){

        if ($("#username").val().length < 5) {
            return;
        }

        $('#usernameLoading').show();
        $.post("usercheck.php", {
            un: $('#username').val()
        }, function(response){
            $('#usernameResult').fadeOut();
            setTimeout("finishAjax('usernameResult', '"+escape(response)+"')", 400);
        });
        return false;
    });
});

function finishAjax(id, response) {
   $('#usernameLoading').hide();
   $('#'+id).html(unescape(response));
   $('#'+id).fadeIn();
} //finishAjax

答案 1 :(得分:0)

非常接近,它应该像那样工作:

if($(“#username”)[0] .value.length&gt; = 5) {

//做点什么

}

答案 2 :(得分:0)

$('#username').keypress(function(){

  var name = $(this).val();
  if (name.length > 5) doAjaxCheck(name);


});

我将doAjaxCheck拆分成一个单独的函数,因为你可能想要因为剪贴板操作等而再次检查它。

答案 3 :(得分:0)

应该可以。只需将其放在$('#username').blur(function(){下,并将当前块包装在if语句