私信  •  关注

Rocket Hazmat

Rocket Hazmat 最近创建的主题
Rocket Hazmat 最近回复了
14 年前
回复了 Rocket Hazmat 创建的主题 » jquery validate-要求在一个组中至少填写一个字段

我对其他没有与此相关联的规则有问题,因此我更改了:

fields.valid();

对此:

var validator = this;
fields.each(function(){
   validator.valid(this);
});

我还做了一些(个人)改进,这是我正在使用的版本:

jQuery.validator.addMethod("require_from_group", function(value, element, options){
    var numberRequired = options[0],
    selector = options[1],
    $fields = $(selector, element.form),
    validOrNot = $fields.filter(function() {
        return $(this).val();
    }).length >= numberRequired,
    validator = this;
    if(!$(element).data('being_validated')) {
        $fields.data('being_validated', true).each(function(){
            validator.valid(this);
        }).data('being_validated', false);
    }
    return validOrNot;
}, jQuery.format("Please fill out at least {0} of these fields."));