2016-09-27 7 views
1

Как удалить выбранные элементы из выбранного jquery multi после нажатия кнопки сброса?Обновить Jquery multi selected select

<select data-placeholder="Select" id="options" class="chosen-select" maxwidth="50px" multiple tabindex="15" ></select> 

Я пробовал несколько способов, не повезло. Это мой код:

$("#options").multiselect('refresh'); 
    $("#options").multiselect('clearSelection'); 
    $('#options').multiSelect('deselect_all'); 
    $("#options").find('option:selected').removeAttr("selected"); 

После выше еще отображать выбранные элементы, как на изображении,

enter image description here

Любая помощь будет оценена.

+0

Этот скриншот не похож на мультиспектр - он выглядит как Chosen (https://harvesthq.github.io/chosen/) или tagit (http://aehlke.github.io/tag-it/) ... Вы на 100% уверены в том, какая библиотека используется? EDIT: на самом деле в зависимости от класса, это выбранное поле ... используйте методы '.chosen()' или задайте для свойства значение false (например, '$ (« # options »). Find ('option: selected') .prop ('selected', false) '), а не просто удаление атрибута; затем инициируйте обновление: '$ (« # options »). trigger ('selected: updated');' –

ответ

0

Я не слишком хорошо знаком с множественным, но в соответствии с docs, похоже, вы можете отменить все с помощью:

$('#your-select').multiSelect('deselect_all'); 
+0

Я тоже пробовал это. не работает для меня. –

1

Это не мультиселекция, это поле, выбранное jQuery, похоже. ответ здесь охватывает вас: 'select all' and 'remove all' with chosen.js - просто удалить выбранное свойство из вариантов затем обновить выбранный элемент

$("#options").find('option:selected').prop('selected',false); 
$("#options").trigger('chosen:updated'); 

Если вы используете старую версию выбрала, то правильный триггер для вас может быть: Лист: обновленный, например.

$("#options").trigger('liszt:updated'); 

Но вам нужно будет добавить эту деталь к вопросу, чтобы я мог точно сказать.

В качестве альтернативы, если вы ТАКЖЕ инициализировали это как multiSelect, я предсказываю проблемы в будущем. Я бы наверняка удостоверился, какой виджет вы ХОТИТЕ использовать, и убедитесь, что вы только инициализируете его/вызываете на нем как этот виджет, а только этот виджет

+0

ДА Это Jquery выбрано несколько, но этот ответ не работает для меня. Выбранные предметы все еще есть. –

+0

Тогда я бы посоветовал, что у вас могут возникнуть проблемы, связанные с его инициализацией как двух разных типов виджетов. Первая строка - это принятый способ отменить выбор всех опций в списке выбора (http://stackoverflow.com/questions/1857781/best-way-to-unselect-a-select-in-query), вторая строка принята способ обновления выбранного виджета, параметры которого были обновлены (https://harvesthq.github.io/chosen/options.html#triggerable-events). вы также можете использовать устаревшую версию выбранного, которая имела разные триггеры, если я правильно помню. Вам нужно добавить дополнительную информацию на вопрос о помощи. –

+0

, но если вы вызываете что-то, начинающееся с '$ ('# options'). MultiSelect (...', то я ожидаю, что для вас ничего не сработает - методы multiSelect не будут работать в выбранных полях и будут вероятно, вызывают проблемы в этой области. –

 Смежные вопросы

  • Нет связанных вопросов^_^