|
1350 | 1350 | var
|
1351 | 1351 | identifier = field.identifier || fieldName,
|
1352 | 1352 | $field = module.get.field(identifier),
|
| 1353 | + $fieldGroup = $field.closest($group), |
1353 | 1354 | $dependsField = field.depends
|
1354 | 1355 | ? module.get.field(field.depends)
|
1355 | 1356 | : false,
|
1356 | 1357 | fieldValid = true,
|
1357 | 1358 | fieldErrors = [],
|
1358 |
| - isDisabled = $field.filter(':not(:disabled)').length === 0, |
| 1359 | + isDisabled = $field.filter(':not(:disabled)').length === 0 || $fieldGroup.hasClass(className.disabled) || $fieldGroup.parent().hasClass(className.disabled), |
1359 | 1360 | validationMessage = $field[0].validationMessage,
|
1360 | 1361 | noNativeValidation = field.noNativeValidation || settings.noNativeValidation || $field.filter('[formnovalidate],[novalidate]').length > 0 || $module.filter('[novalidate]').length > 0,
|
1361 | 1362 | errorLimit
|
|
1364 | 1365 | module.debug('Using field name as identifier', identifier);
|
1365 | 1366 | field.identifier = identifier;
|
1366 | 1367 | }
|
1367 |
| - if (validationMessage && !noNativeValidation) { |
| 1368 | + if (validationMessage && !noNativeValidation && !isDisabled) { |
1368 | 1369 | module.debug('Field is natively invalid', identifier);
|
1369 | 1370 | fieldErrors.push(validationMessage);
|
1370 | 1371 | fieldValid = false;
|
1371 | 1372 | if (showErrors) {
|
1372 |
| - $field.closest($group).addClass(className.error); |
| 1373 | + $fieldGroup.addClass(className.error); |
1373 | 1374 | }
|
1374 | 1375 | } else if (showErrors) {
|
1375 |
| - $field.closest($group).removeClass(className.error); |
| 1376 | + $fieldGroup.removeClass(className.error); |
1376 | 1377 | }
|
1377 | 1378 | if (isDisabled) {
|
1378 | 1379 | module.debug('Field is disabled. Skipping', identifier);
|
|
0 commit comments