Как разрешить пользователю выбирать пустую строку в Select2
Texbox динамически заполняется удаленным вызовом с помощью Select2, и я хочу, чтобы пользователи оставили поле пустым.
$("#e6").select2({
placeholder: "Search for a movie",
minimumInputLength: 1,
ajax: {
url: "http://api.rottentomatoes.com/api/public/v1.0/movies.json",
dataType: 'jsonp',
data: function (term, page) {
return {
q: term, // search term
page_limit: 10,
};
},
results: function (data, page) {
return {results: data.movies};
}
},
});
Вот рабочий пример http://ivaynberg.github.io/select2/index.html#ajax
Ответы
Ответ 1
Вы можете установить для параметра allowClear
значение true
.
$("#e6").select2({
allowClear: true,
placeholder: "Search for a movie",
...
Когда установлено значение true
, параметр allowClear
заставляет элемент управления Select2 отображать кнопку очистки, но вы также должны указать параметр placeholder
, чтобы он работал.
Здесь jsfiddle показывает, что он работает для Select2, который использует ajax.
Ответ 2
Это сработало для меня,
$('#f').select2(
{
allowClear: true,
placeholder: {
id: "-1",
text:"City",
selected:'selected'
},
data:[
{id: -1,text: '',selected: 'selected',search:'',hidden:true},
{ id: 1,
text: 'Italy',
search: "Italy",
children: [
{id: 2, text: 'Sardinia', search: "Italy Sardinia", selected: false},
{id: 3, text: 'Sicily', search: "Italy Sicily", selected: false}
]
},
{
id: 4,
text: 'United Kingdom',
search: "United Kingdom",
children:[
{id: 5, text: 'Guernsey', search: "United Kingdom - Guernsey", selected: false},
{id: 6, text: 'Jersey', search: "United Kingdom - Jersey", selected: false}
]
}
]
}
);
Ответ 3
Предположим, вы используете Formtastic Обычно с активным администратором Вы можете пройти во время объявления
f.input :your_select_2_field, { as: :select2, collection: ['a', 'b'], include_blank: 'Select Nothing'}
Концентрация на фигурных скобках {}