条件验证问题

时间:2014-04-02 07:55:00

标签: javascript jquery

我是新的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;
});

你能指导我吗?

2 个答案:

答案 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){