Javascript迷你验证脚本

时间:2011-11-20 01:55:59

标签: javascript forms validation

我是js的新手。尝试创建迷你验证功能,如果字段为空,则会检查字段。

我想做的是,调用类似checkIfEmpty("fullname, email,...")的函数,然后在函数内部,检查用逗号分隔的每个字段,将空字段收集到一个数组,并在结尾检查此数组是否为空。试过像func这样的东西,但是不知道js中php函数的所有替代品。请帮助我实现我的想法..

function checkIfEmpty(fields)
{
    var emptyFields=new Array();
    fields=fields.split(',');
    foreach(fields as field)
    {
        if (!field.val()) {
            field.attr('class', 'invalid');
            emptyFields[] = field;
        }
        }
        if(emptyFields.length()==0){return true;}
        else {return false;}
}

2 个答案:

答案 0 :(得分:1)

好像你想要这样的东西:

$("input:text").each(function(i, field) {
     if (!field.val()) {
         field.addClass('invalid');
     }
});
return ($("input.invald").length > 0); // return true if invalid fields

答案 1 :(得分:0)

您还可以在每个输入上设置一个不应该为空的类,然后在表单提交上检查每个具有此类的输入。

$('#form_id').submit(function() {
    $('.required').each(function() {
        // if a input field that's required is empty
        // we add the class '.invalid' 
        if(!$(this).val()) {
           $(this).addClass('invalid');
        }
    });

    // prevent the submission if number
    // there is required fields still empty
    return ($('input.invalid').length == 0);
});

这是一个示例表单,其中包含一个名为email的必填字段:

<form method="POST">
  <input type="text" name="email" class="required" />
  <input type="text" name="firstname" />
  <input type="text" name="lastname" />
  <input type="submit" value="SEND" />
</form>