0

我在 jquery 中有这个函数来验证所有字段是否至少输入了一个字符,我的意思是,如果它们不为空,如下面的代码所示:

function validateStep(step){
    if(step == fieldsetCount) return;

    var error = 1;
    var hasError = false;
    $('#formElem').children(':nth-child('+ parseInt(step) +')').find(':input:not(button)').each(function(){
        var $this       = $(this);
        var valueLength = jQuery.trim($this.val()).length;

        if(valueLength == ''){
            hasError = true;
        }

    });
    var $link = $('#navigation_form li:nth-child(' + parseInt(step) + ') a');
    $link.parent().find('.error,.checked').remove();

    var valclass = 'checked';
    if(hasError){
        error = -1;
        valclass = 'error';
    }
    $('<span class="'+valclass+'"></span>').insertAfter($link);

    return error;
}

碰巧在我拥有的如此大的表格中,有一个不需要的字段。我在实现 jquery 代码方面仍然有一些困难,我不知道如果我可以在这个函数的中间插入来说明不需要特定的字段会怎样。

谁能给我一点帮助?

提前致谢!

4

4 回答 4

1

尝试检查当前元素的 ID 是否与您要排除的元素的 ID 不匹配:

var $this = $(this); 
if($this.attr('id') != 'SOMEID'){
  // Validate
}
于 2012-08-06T13:06:28.880 回答
1

您可以使用特定类标记您的必填字段并遍历具有此类“必填”的字段,这样可以轻松更改您要检查哪些字段的决定

我建议 Jörn Zaefferer 的http://bassistance.de/jquery-plugins/jquery-plugin-validation/中的 jQuery 验证插件,它使用这种技术来验证表单

于 2012-08-06T13:10:18.107 回答
0

我建议你使用一个 jquery 插件

例如。 http://docs.jquery.com/Plugins/Validation#demo

http://bassistance.de/2011/05/14/release-validation-plugin-1-8-1/

这将使您的工作变得轻松。

于 2012-08-06T13:20:00.723 回答
0

为什么不只是添加一个属性 - isRequired=true || isRequired=false 然后通过属性值收集并验证你需要的元素?

于 2012-08-06T13:21:44.230 回答