Fix JavaScript-based required label

This commit is contained in:
Richard Schreiber
2025-05-12 15:20:52 +02:00
committed by Raphael Michel
parent aaef7579d9
commit 6f92f2324f
2 changed files with 9 additions and 1 deletions

View File

@@ -51,6 +51,13 @@ $(function () {
const required = 'required' in options && options.required && isRequired && visible; const required = 'required' in options && options.required && isRequired && visible;
dependent.closest(".form-group").toggle(visible).toggleClass('required', required); dependent.closest(".form-group").toggle(visible).toggleClass('required', required);
dependent.prop("required", required); dependent.prop("required", required);
const label = dependent.closest(".form-group").find("label");
const labelRequired = label.find(".label-required");
if (!required) {
labelRequired.remove();
} else if (!labelRequired.length) {
label.append('<i class="label-required">' + gettext('required') + '</i>')
}
} }
for (var k in dependents) dependents[k].prop("disabled", false); for (var k in dependents) dependents[k].prop("disabled", false);
}).always(function() { }).always(function() {
@@ -64,6 +71,7 @@ $(function () {
dependent.closest(".form-group").toggle(visible).toggleClass('required', required); dependent.closest(".form-group").toggle(visible).toggleClass('required', required);
dependent.prop("required", required); dependent.prop("required", required);
dependent.closest(".form-group").find("label .label-required").remove();
} }
}); });
}; };

View File

@@ -551,7 +551,7 @@ $(function () {
} }
dependent.closest('.form-group').toggleClass('required', enabled); dependent.closest('.form-group').toggleClass('required', enabled);
if (enabled) { if (enabled) {
dependentLabel.append('<i class="sr-only label-required">, ' + gettext('required') + '</i>'); dependentLabel.append('<i class="label-required">' + gettext('required') + '</i>');
} }
else { else {
dependentLabel.find(".label-required").remove(); dependentLabel.find(".label-required").remove();