Skip to content

Commit 09e6d28

Browse files
authored
fix(form): optimized disabled detection
The code to detect a field is disabled could not handle fields under fieldset[disabled]
1 parent 7137827 commit 09e6d28

File tree

1 file changed

+2
-8
lines changed

1 file changed

+2
-8
lines changed

src/definitions/behaviors/form.js

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1128,7 +1128,7 @@ $.fn.form = function(parameters) {
11281128
$elGroup = $(el).closest($group),
11291129
isCheckbox = ($el.filter(selector.checkbox).length > 0),
11301130
isRequired = $el.prop('required') || $elGroup.hasClass(className.required) || $elGroup.parent().hasClass(className.required),
1131-
isDisabled = $el.prop('disabled') || $elGroup.hasClass(className.disabled) || $elGroup.parent().hasClass(className.disabled),
1131+
isDisabled = $el.is(':disabled') || $elGroup.hasClass(className.disabled) || $elGroup.parent().hasClass(className.disabled),
11321132
validation = module.get.validation($el),
11331133
hasEmptyRule = validation
11341134
? $.grep(validation.rules, function(rule) { return rule.type == "empty" }) !== 0
@@ -1207,13 +1207,7 @@ $.fn.form = function(parameters) {
12071207
module.debug('Using field name as identifier', identifier);
12081208
field.identifier = identifier;
12091209
}
1210-
var isDisabled = true;
1211-
$.each($field, function(){
1212-
if(!$(this).prop('disabled')) {
1213-
isDisabled = false;
1214-
return false;
1215-
}
1216-
});
1210+
var isDisabled = !$field.filter(':not(:disabled)').length;
12171211
if(isDisabled) {
12181212
module.debug('Field is disabled. Skipping', identifier);
12191213
}

0 commit comments

Comments
 (0)