单击检查表单中是否有元素显示无

时间:2015-01-17 12:49:24

标签: javascript jquery html forms validation

我有一个表单,在单击按钮时我隐藏了一些输入。我有一个验证代码,它贯穿每个输入并在有空输入时输出错误信息。但是为了提交表单,我必须填写每个元素,包括不可见的元素,因为代码正在打印消息,尽管我已经填充了所有可见元素。

以下是验证的代码

$('button.submit-first').click(function() {
    var emptyElements = $('form.registration-form div.first-part :input').filter( function() {
        return this.value === '';
    });

    if (emptyElements.length === 0)
    {
        $('p.red').css('display', 'none');
    } 

    else
    {
        $('p.red').css('display', 'block');
        $('html, body').animate({scrollTop: $('div.row').offset().top}, 800);
    }
});

我似乎无法弄清楚我应该如何浏览输入,如果有不可见的那些只是跳过它们并检查可见的那些。

1 个答案:

答案 0 :(得分:0)

您只需在输入中添加“:visible”即可验证这些内容。

$('button.submit-first').click(function() {
    var emptyElements = $('form.registration-form div.first-part :input:visible').filter( function() {
    return this.value === '';
});