diff --git a/multiple-select.js b/multiple-select.js index ea997187..0f6ca957 100644 --- a/multiple-select.js +++ b/multiple-select.js @@ -367,7 +367,9 @@ }); this.$selectGroups.off('click').on('click', function () { var group = $(this).parent().attr('data-group'), - $items = that.$selectItems.filter(':visible'), + $items = that.options.multipleSelectFilteredOnly + ? that.$selectItems.filter(':visible') + : that.$selectItems, $children = $items.filter(sprintf('[data-group="%s"]', group)), checked = $children.length !== $children.filter(':checked').length; @@ -525,7 +527,9 @@ }, updateOptGroupSelect: function () { - var $items = this.$selectItems.filter(':visible'); + var $items = this.options.multipleSelectFilteredOnly + ? this.$selectItems.filter(':visible') + : this.$selectItems; $.each(this.$selectGroups, function (i, val) { var group = $(val).parent().attr('data-group'), $children = $items.filter(sprintf('[data-group="%s"]', group)); @@ -735,6 +739,7 @@ addTitle: false, filterAcceptOnEnter: false, hideOptgroupCheckboxes: false, + multipleSelectFilteredOnly: true, selectAllText: 'Select all', allSelected: 'All selected',