利用jQuery.Validate异步验证用户名是否存在(推荐)
HTML头部引用:
<scripttype="text/JavaScript"src="../js/jQuery-1.3.2.min.js"></script> <scripttype="text/javascript"src="../js/jquery.validate.min.js"></script> <scripttype="text/javascript"src="../js/messages_cn.js"></script>
HTML内容(部分):
<formname="form1"id="form1"method="post"action=""> <dl> <dt>用户名:</dt> <dd><inputname="txtUserName"id="txtUserName"type="text"class="input1"/></dd> </dl> </form>
JS代码部分:
$(function(){
//表单验证JS
$("#form1").validate({
//出错时添加的标签
errorElement:"span",
rules:{
txtUserName:{
required:true,
minlength:3,
maxlength:16,
remote:{
type:"post",
url:"/tools/ValidateUserName.ashx",
data:{
username:function(){
return$("#txtUserName").val();
}
},
dataType:"html",
dataFilter:function(data,type){
if(data=="true")
returntrue;
else
returnfalse;
}
}
}
},
success:function(label){
//正确时的样式
label.text("").addClass("success");
},
messages:{
txtUserName:{
required:"请输入用户名,3-16个字符(字母、数字、下划线),注册后不能更改",
minlength:"用户名长度不能小于3个字符",
maxlength:"用户名长度不能大于16个字符",
remote:"用户名不可用"
}
}
});
});
应注意的地方:
data:{
username:function(){
return$("#txtUserName").val();
}
有返回值,如果直接写“data:{username:$("#txtUserName").val();}”,这样是获取不到值的。
以上所述是小编给大家介绍的利用jQuery.Validate异步验证用户名是否存在,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!