diff --git a/modules/webform_clientside_validation/js/webform_clientside_validation.ife.js b/modules/webform_clientside_validation/js/webform_clientside_validation.ife.js index 897668ccd..c2ae105ca 100644 --- a/modules/webform_clientside_validation/js/webform_clientside_validation.ife.js +++ b/modules/webform_clientside_validation/js/webform_clientside_validation.ife.js @@ -64,6 +64,20 @@ $errorMessages.insertAfter($fieldSuffix); }); }; + if (!options.hasOwnProperty('errorPlacement')) { + options.errorPlacement = function(error, element) { + // Update placement of grouped radio or checkbox + if ($(element).attr('type') === 'radio' || $(element).attr('type') === 'checkbox') { + if ($(element).attr('type') === 'radio') { + return error.insertAfter(element.parent().parent().parent()); + } + if ($(element).attr('type') === 'checkbox') { + return error.insertAfter(element.parent().parent()); + } + } + error.insertAfter(element); + }; + } }); })(jQuery, drupalSettings);