Как разрешить пользователю выбирать пустую строку в 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'}

Концентрация на фигурных скобках {}