Select2 - заполнитель не отображается

Я использую плагин Select2 в моем приложении asp.net mvc 5. согласно документации

Опция заполнителя позволяет вам передавать объект данных, а не просто строку, если вам нужна большая гибкость. Идентификатор объекта данных должен соответствовать значению опции заполнителя.

Я сделал именно это, но заполнитель все еще не появляется.

Код:

model.Step6.Titles.Insert(0, new SelectListItem() { Text = "Select a Title", Value = "0", Selected = true });

@Html.DropDownListFor(model => model.Step6.Title, Model.Step6.Titles, new { id="teamtitle", @style = "width: 100%;"})

$("select").select2({
    allowClear: true,
    placeholder: {
        id: "0",
        placeholder: "Select an Title"
    }
})

кто-то может показать мне, что я здесь делаю не так?

3 ответа

Решение

Я думаю, что заполнитель это строка. Не является объектом https://select2.github.io/examples.html

$("select").select2({
    allowClear: true,
    placeholder:"Select an Title"

})

Ошибка placeholder: "Select an Title".Так должно быть-

$("select").select2({
    allowClear: true,
    placeholder: {
        id: "0",
        text: "Select an Title" //Should be text not placeholder
    }
})

https://select2.org/placeholders

Я пишу здесь, потому что я потратил много времени на выяснение того, что не так в моем коде. У меня объект- заполнитель тоже не отображается (тогда как строка- заполнитель отображается правильно). Дело в том, что пустой элемент option должен соответствовать значению идентификатору заполнителя. Я имею в виду, если вы поставите первый пустой параметр, как показано ниже:

<option></option>

это не будет соответствовать заполнителю, объявленному как

placeholder : { id:'0', text:'Please select...'}

и это ничего не отобразит. Вместо этого вы должны написать:

 <option value="0"></option>

Обратите внимание, что при использовании множественного выбора для select2 требуется заполнитель в качестве объекта. См. https://codepen.io/louking/pen/BGMvRP? для общих примеров использования yadcf (извините за дополнительную сложность, но я считаю, что yadcf передает select_type_options непосредственно для select2). (Выдержка ниже)

  {
    column_number:2,
    select_type: 'select2',
    filter_type: 'multi_select',
    select_type_options:
      {
        placeholder: {
          id: -1,
          text: 'pick col2'
        },
        width: '200px',
        allowClear: true,
      }
  },
Другие вопросы по тегам