aboutsummaryrefslogtreecommitdiffstats
path: root/ui/widgets/selectmenu.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/widgets/selectmenu.js')
-rw-r--r--ui/widgets/selectmenu.js12
1 files changed, 7 insertions, 5 deletions
diff --git a/ui/widgets/selectmenu.js b/ui/widgets/selectmenu.js
index 79e1eacc9..c80e39f60 100644
--- a/ui/widgets/selectmenu.js
+++ b/ui/widgets/selectmenu.js
@@ -354,7 +354,12 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
if ( item.disabled ) {
this._addClass( li, null, "ui-state-disabled" );
}
- this._setText( wrapper, item.label );
+
+ if ( item.hidden ) {
+ li.prop( "hidden", true );
+ } else {
+ this._setText( wrapper, item.label );
+ }
return li.append( wrapper ).appendTo( ul );
},
@@ -658,10 +663,6 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
var that = this,
data = [];
options.each( function( index, item ) {
- if ( item.hidden ) {
- return;
- }
-
data.push( that._parseOption( $( item ), index ) );
} );
this.items = data;
@@ -675,6 +676,7 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
index: index,
value: option.val(),
label: option.text(),
+ hidden: optgroup.prop( "hidden" ) || option.prop( "hidden" ),
optgroup: optgroup.attr( "label" ) || "",
disabled: optgroup.prop( "disabled" ) || option.prop( "disabled" )
};