2015-10-14 5 views
1

Im, использующий плагин Select2. Моя проблема проста - я не хочу, чтобы раскрывающийся список отображался, когда я очищаю параметр.Select2 - выключение выпадающего меню после очистки опции

Вот мой код:

<select class="select2-test" style="width: 20%;"> 
 
\t <option value=""></option> 
 
\t <option value="option1">Option 1</option> 
 
\t <option value="option2">Option 2</option> 
 
</select> 
 

 
<script> 
 
$('.select2-test').select2({ 
 
\t placeholder: "Choose 1 option", 
 
\t allowClear: true 
 
}); 
 
</script>

Я попытался удалить эту строку из select2.min.js:

this.on("close",function(){a.$container.removeClass("select2-container--open")})

Но это did not help - выпадающий список не появится после использования его один раз. Любая помощь будет оценена. :)

ответ

1

Советую не редактировать исходную папку js. Кстати, вы можете использовать это, запуская одним щелчком:

$ ('select'). Select2 ("close");

Или вы можете использовать событие Выбор2 удаляющих или/и ВЫБ.2-удалены, что является лучшим решением, я думаю (с event.preventDefault или возвращать ложь, как вы хотите).

+0

Не могли бы вы показать мне пример с event.preventDefault? Я попробовал что-то вроде этого: $ (". Select2-selection__clear"). Click (function (event) { \t event.preventDefault(); }); но это не сработало. – JohnnyXecutor

+0

Я нашел здесь пример: http://select2.github.io/select2/ В ​​разделе «Заполнители» он работает, как я хочу, после очистки опции. Но почему? – JohnnyXecutor

+0

Извините, если я что-то не понял, но какой тип выбора вы хотите? Множественный выбор или один? – KCarnaille

Смежные вопросы