diff --git a/app/assets/javascripts/sitewide/dropdown_selector.js b/app/assets/javascripts/sitewide/dropdown_selector.js index da29489a9..9497c6b69 100644 --- a/app/assets/javascripts/sitewide/dropdown_selector.js +++ b/app/assets/javascripts/sitewide/dropdown_selector.js @@ -179,8 +179,19 @@ var dropdownSelector = (function() { } // Add selected option to value - function addSelectedOption(selector, container) { - setData(selector, [convertOptionToJson($(selector).find('option:selected')[0])], true); + function addSelectedOptions(selector, container) { + var selectedOptions = []; + var optionSelector = selector.data('config').noEmptyOption ? 'option:selected' : 'option[data-selected=true]'; + $.each($(selector).find(optionSelector), function(i, option) { + selectedOptions.push(convertOptionToJson(option)); + if (selector.data('config').singleSelect) return false; + return true; + }); + + if (!selectedOptions.length) return false; + + setData(selector, selectedOptions, true); + return true; } // Prepare custom dropdown icon @@ -422,7 +433,7 @@ var dropdownSelector = (function() { } // Select default value - if (config.noEmptyOption && config.singleSelect) { + if (!selectElement.data('ajax-url')) { addSelectedOption(selectElement, dropdownContainer); } diff --git a/app/views/dashboards/_current_tasks.html.erb b/app/views/dashboards/_current_tasks.html.erb index 99d278056..00ebc0873 100644 --- a/app/views/dashboards/_current_tasks.html.erb +++ b/app/views/dashboards/_current_tasks.html.erb @@ -20,9 +20,18 @@