From f9cec3a7d219fae5084f8a2177fe3cb59f44516c Mon Sep 17 00:00:00 2001 From: buggyj Date: Tue, 19 Mar 2024 19:08:05 +0100 Subject: [PATCH] Fixes #8092 SelectWidget does not work with multiple options organised into group --- core/modules/widgets/select.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/core/modules/widgets/select.js b/core/modules/widgets/select.js index 2940e3be0..381c12f41 100644 --- a/core/modules/widgets/select.js +++ b/core/modules/widgets/select.js @@ -122,8 +122,17 @@ SelectWidget.prototype.setSelectValue = function() { value = value === undefined ? "" : value; var select = this.getSelectDomNode(); var values = Array.isArray(value) ? value : $tw.utils.parseStringArray(value); + var child; for(var i=0; i < select.children.length; i++){ - select.children[i].selected = values.indexOf(select.children[i].value) !== -1 + child=select.children[i]; + if (child.children.length === 0){ + child.selected = values.indexOf(child.value) !== -1 + } else { + // grouped options + for(var y=0; y < child.children.length; y++){ + child.children[y].selected = values.indexOf(child.children[y].value) !== -1 + } + } } } else { var domNode = this.getSelectDomNode();