Выберите 2 в Rails не рендеринг должным образом

Я пытаюсь реализовать функциональность select2 в моем проекте. Это не рендеринг должным образом. Я вставляю свой код, пожалуйста, скажите мне, где он ошибся

<div class="form-group">
              <label for="userInputCollegeName">College Name</label>
              <%= f.collection_select(:college_id, College.all, :id, :name, {:prompt => 'Select the college'}) %>
            </div>



<script>$(document).ready(function() {
  $("#user_college_id").select2({theme: "bootstrap"});
});</script>

В моем HTML идентификатор для collection_select является user_college_id,

Я добавляю изображение:

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

Я знаю, что первый выбор - из-за тега collection_select, а второе - из-за select2, но первое мне не нужно.

Мне требуется только поле select2. Как мы можем сделать это? Любая помощь приветствуется!

1 ответ

Может быть проблема в вашем

f.collection_select(:college_id, College.all, :id, :name, {:prompt => 'Select the college'})

попробуйте изменить его на

f.collection_select(:college_id, College.all, :id, :name, {:prompt => 'Select the college'}, {class: "user-college-select"})

и внутри вашего javascript:

<script>
   $(document).ready(function() {
      $(".user-college-select").select2({theme: "bootstrap"});
   });
</script>
Другие вопросы по тегам