Как использовать другой стиль параметра .select2: filter в качестве первой строки, а не в раскрывающемся списке?

Вместо того, чтобы нажимать на ввод формы select2 и отображать раскрывающееся меню с текстовым полем в нем:

введите здесь описание изображения

Как мы можем показать, где текстовое поле заменяет текст-заполнитель, например:

введите здесь описание изображения

_form.html.erb

<%= f.grouped_collection_select(:name, @collection, :last, :first, :to_s, :to_s, include_blank: true ) %>

<script>
  $('#lifetime_name').select2({
    placeholder: "Enter Challenge",
    theme: "bootstrap",
    tags: true,
    multiple: false,
  });
</script>

Select2 Github


person AnthonyGalli.com    schedule 02.01.2016    source источник
comment
Galli.com, есть опция select2   -  person Venkat.R    schedule 03.01.2016
comment
Похоже, что это достижимо только путем удаления параметра-заполнителя.   -  person Ryan Bigg    schedule 03.01.2016
comment
Дело в том, что вы не хотите показывать параметр фильтра, верно?   -  person Venkat.R    schedule 03.01.2016
comment
@RyanBigg Я не понимаю, в чем может быть проблема с заполнителем. В примере select2 есть заполнитель: select2.github.io/examples.html#placeholders< /а>   -  person AnthonyGalli.com    schedule 03.01.2016
comment
@Венкатраман. Мне нужен вариант фильтра. Я просто хочу, чтобы это было в первой строке, а не в раскрывающемся списке.   -  person AnthonyGalli.com    schedule 03.01.2016
comment
@AnthonyGalli.com, проверьте мой ответ и дайте нам знать   -  person Venkat.R    schedule 03.01.2016


Ответы (1)


То, что вы на самом деле ожидаете здесь, — это раскрывающийся список с несколькими вариантами выбора или несколькими значениями в этом примере. Это не раскрывающийся список с одним значением.

Как обходной путь. попробуйте это ниже.

 $('#lifetime_name').select2({
    placeholder: "Enter Challenge",
    theme: "bootstrap",
    tags: true,
    multiple: true,
  }).on('select2:select', function (e) {
        //clear the input box after a selection is made
        $(this).val([]).trigger('change');
        $(this).val([e.params.data.id]).trigger("change");
    });

Обратитесь к этому вопросу: Select2 start с полем ввода вместо раскрывающегося списка

person Venkat.R    schedule 03.01.2016
comment
Большое спасибо Вен! Это отлично сработало после игры с CSS, чтобы получить желаемый вид. - person AnthonyGalli.com; 05.01.2016