[英]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.