Add empty option in dropdown selector

This commit is contained in:
Mojca Lorber 2020-02-07 14:57:07 +01:00
parent edaf7adbbb
commit e9e7b85e0b
3 changed files with 13 additions and 1 deletions

View file

@ -33,6 +33,7 @@ var ListColumnHelper = (function() {
singleSelect: true,
selectAppearance: 'simple',
closeOnSelect: true,
emptyOptionAjax: true,
onChange: function() {
var values = dropdownSelector.getValues('#' + select);
$hiddenField.val(values);

View file

@ -34,6 +34,7 @@ var StatusColumnHelper = (function() {
singleSelect: true,
selectAppearance: 'simple',
closeOnSelect: true,
emptyOptionAjax: true,
onChange: () => {
var values = dropdownSelector.getValues('#' + select);
$hiddenField.val(values);

View file

@ -41,6 +41,7 @@
selectAppearance: string, // 'tag' or 'simple'. Default 'tag'
closeOnSelect: boolean, // Close dropdown after select
disableSearch: boolean, // Disable search
emptyOptionAjax: boolean, // Add empty option for ajax request
}
@ -730,7 +731,16 @@ var dropdownSelector = (function() {
ajaxParams = customParams ? customParams(defaultParams) : defaultParams;
$.get(selector.data('ajax-url'), ajaxParams, (data) => {
loadData(selector, container, data);
var optionsAjax = data;
if (selector.data('config').emptyOptionAjax) {
optionsAjax = [{
label: '',
value: '',
group: null,
params: {}
}].concat(data);
}
loadData(selector, container, optionsAjax);
PerfectSb().update_all();
});
// For local options we convert options element from select to correct array