MDL-61061 formslib: make sure hideIf rules hide labels within groups

This commit is contained in:
Davo Smith
2018-01-03 13:05:58 +00:00
parent c62f0a396b
commit d5cd1496ce
+18
View File
@@ -282,6 +282,8 @@ if (typeof M.form.dependencyManager === 'undefined') {
var els = this.elementsByName(name, true);
els.each(function(node) {
var e = node.ancestor('.fitem', true);
var label = null,
id = null;
if (e) {
// Cope with differences between clean and boost themes.
if (e.hasClass('fitem_fgroup')) {
@@ -298,6 +300,22 @@ if (typeof M.form.dependencyManager === 'undefined') {
e.setStyles({
display: (hidden) ? 'none' : ''
});
// Hide/unhide the label as well.
id = node.get('id');
if (id) {
label = Y.all('label[for="' + id + '"]');
if (label) {
if (hidden) {
label.setAttribute('hidden', 'hidden');
} else {
label.removeAttribute('hidden');
}
label.setStyles({
display: (hidden) ? 'none' : ''
});
}
}
}
});
},