Отображение первых 5 опций по умолчанию в select2 - PullRequest
1 голос
/ 07 октября 2019

Я пытаюсь отобразить первые 5 опций по умолчанию при рендеринге select2.

Select countries
____________

America
Canada
England
France
Spain

Я сделал это несколько раз и использовал выбранные, чтобы он мог отображаться, но не так просто, как указано выше.

Как я могу настроить это так?

Я использовал опцию открытия, поэтому она отображает их, как указано выше.

$('#id').select2('open')

Однако, когда я нажимаю в любом месте экрана, он закрывается. Как я могу держать его открытым все время?

1 Ответ

0 голосов
/ 09 октября 2019

Допустим, что ваш раскрывающийся HTML-код выглядит следующим образом:

<select multiple="multiple" id="s1" style="width: 300px">
        <option value="1">America</option>
        <option value="2">Canada</option>
        <option value="3">England</option>
        <option value="4">France</option>
        <option value="5">Spain</option>
</select>


Если вы хотите всегда держать открытым раскрывающийся список, вы можете использовать следующий код. Это предотвращает закрытие, переопределяя метод обратного вызова.

$(doucment).ready(function() {
var list = $('#s1').select2({
  closeOnSelect: false,
}).on("select2:closing", function(e) {
  e.preventDefault();
}).on("select2:closed", function(e) {
  list.select2("open");
});


list.select2("open");
});

Пожалуйста, см. Рабочий JSFiddle

...