繁体   English   中英

这个Jquery表单验证有什么问题

[英]what is the wrong with this Jquery form validation

我正在尝试使用Jquery验证具有3个条件的表单元素。

这是我的代码-

var valid = true,
errorMessage = "";

if ($('#name').val()) {
    if ($('#name').val().length > 60 || $('#name').val().length < 3)  { 
        errorMessage  = "Length of Your Name must be between 3 and 60.\n";
        valid = false;
    } else {
        var rege = /^[a-z]([a-z_])+$/i;
        if(!rege.test(!$('#name').val())){ 
               errorMessage  += "Please enter Valid name.\n";
               valid = false;
        }
    }
} else {
    errorMessage  += "please enter your name \n";
    valid = false;   
}

如果名称字段为空,则应显示“请输入您的姓名”。

如果该字段不为空,并且长度小于3或大于60,则应显示“您的姓名长度必须介于3到60之间”。

最后应该检查用户名是否有效。 如果无效,则应显示“请输入有效名称”。

我的问题是,当我输入有效的用户名时,它总是显示以下消息-“请输入有效的名称”。

谁能说出我哪里错了?

注意:我的名字只能有大写字母和小写字母。

小提琴

任何想法都将不胜感激。 谢谢。

对我来说看起来很好,一个不需要的异常!

        var rege = /^[a-z]([a-z\s])+$/i;
        if(!rege.test($('#name').val())){ // ! before $('#name').val() not required
            errorMessage  += "Please enter Valid name.\n";
            valid = false;
        }

将您的正则表达式更改为:

var rege = /^[a-zA-Z]([a-zA-Z])+$/i;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM