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
}
})
Я пишу здесь, потому что я потратил много времени на выяснение того, что не так в моем коде. У меня объект- заполнитель тоже не отображается (тогда как строка- заполнитель отображается правильно). Дело в том, что пустой элемент 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,
}
},