我是新的JavaScript验证和学习我正在尝试验证表单,但我遇到问题。
在我的表单中,我有一个名称和一个提交按钮的字段。
我正在尝试的是:
如果用户点击提交按钮并且文本框为空,请提供alert('Please enter your First Name.')
然后,如果用户输入了正则表达式不允许的值alert('Please enter only letters no special character allowed.');
但我每次都会得到第一次警报。什么是错的,我不明白。
我的代码:
jQuery('#send').click(function () {
var reg_first_name = /^[A-Za-z ]{3,20}$/;
var first_name = jQuery('#sa_first_name').val();
if(first_name.length > 0){
alert('Please enter your First Name.');
document.getElementById("sa_first_name").focus();
return false;
}
if (!reg_first_name.test(first_name)) {
alert('Please enter only letters no special character allowed.');
document.getElementById("sa_first_name").focus();
return false;
}
return false;
});
你能指导我吗?
答案 0 :(得分:3)
如果用户输入名称,first_name.length > 0
将始终为真。
您可以查看
if($.trim(first_name) == '')
也避免使用空格
答案 1 :(得分:2)
条件错误
if(first_name.length > 0){
如果要检查first_name是否必须具有值,那么您的条件必须是
if(first_name.trim().length == 0){