У меня есть набор select
элементов в форме, с которой я использую плагин Jquery Chosen . Как я могу сбросить форму? Следующее не работает:
<input type="reset" />
У меня есть набор select
элементов в форме, с которой я использую плагин Jquery Chosen . Как я могу сбросить форму? Следующее не работает:
<input type="reset" />
Ответы:
Вам нужно будет сбросить значение поля, затем запустить
liszt:updated
событие на входе, чтобы заставить его обновиться, я сделал скрипку с рабочим примером здесь.http://jsfiddle.net/VSpa3/3/
$(".chzn-select").chosen(); $('a').click(function(){ $(".chzn-select").val('').trigger("liszt:updated"); });
Начиная с выпуска selected v1.0 триггер теперь называется selected: updated. Любой, кто использует эту новую версию, должен запустить обновление, используя
$(".chosen-select").val('').trigger("chosen:updated");
источник
$selectField.val([]).trigger('chosen:updated')
похоже,Начиная с выпуска selected v1.0 триггер теперь называется selected: updated. Любой, кто использует эту новую версию, должен запустить обновление, используя
$(".chosen-select").val('').trigger("chosen:updated");
источник
Вы можете попробовать это:
$('select').chosen('destroy'); $('select').prop("selectedIndex", -1); $('select').chosen();
источник
для того, чтобы перезагрузка работала естественно, используйте это:
$("input[type='reset'], button[type='reset']").click(function(e){ e.preventDefault(); var form = $(this).closest('form').get(0); form.reset(); $(form).find('select').each(function(i, v) { $(v).trigger('chosen:updated'); }); }
источник
$("#Your_id").trigger("chosen:updated");
Это сработало для меня
источник
Для более беспроблемного подхода ... предполагая, что ваши входные данные находятся внутри
<form>
тегов:<form> <!-- your selects go here and any other input fields --> <input type="reset" value="Reset"> </form>
Вот что бы я сделал:
$("input[type='reset'], button[type='reset']").click(function(e){ setTimeout(function(){ $("select").trigger("chosen:updated"); }, 50); });
Смотрите скрипку здесь .
источник
Ни один из предыдущих вариантов мне не подходит. Мне пришлось сделать это как в старой школе, даже используя некоторый собственный javascript, вот код:
$('#dllSample option').each(function(){ $(this)[0].selected = false; }); $("#dllSample").trigger("chosen:updated");
источник
Ни один из ответов здесь не помог мне. Я использую выбранный выбор с множественным атрибутом. Обычная кнопка формы отправки тоже не помогала. Итак, у меня была функция, которая делала это при нажатии.
//Gets the selected values var selected = []; for (var option of document.getElementById('mySelect').options) { if (option.selected) { selected.push(option.value); } } //Resets the form document.getElementById('form1').reset(); //Chosen values doesnt get reset, so we do this manually //Removes the values selected by clicking on the x icon $link = $('a.search-choice-close'); var i; for (i = 0; i < selected.length; i++) { $link[i].click(); }
источник
Иногда вам нужно сбросить выбранный выбор, который вызывается.
я делаю это
jQuery.fn.chosen_reset = function(n){ $(this).chosen('destroy'); $(this).prop('selectedIndex', 0); $(this).chosen(n) }
И вызовите эту функцию вот так, с параметрами в качестве аргумента
$('select').chosen_reset({width:'369px'});
источник
В jQuery должно работать что-то вроде этого
<input name="Text1" id="something" type="text"> <input type="reset" id="reset_me"/> $("#reset_me").click(function() { $("#something").val(""); });
источник