Довольно полезная функция jQuery для очистки всех данных форм, которые я нашел на сайте Карла Сведберга. Он просто удаляет все данные из формы, включая ввод текста, поля выбора, переключатели, флажки и т. Д.… Существует две версии, и вторая версия, вероятно, более полезна, поскольку вы можете применить ее непосредственно к элементу DOM в качестве функции jQuery.
function clearForm(form) {
// iterate over all of the inputs for the form
// element that was passed in
$(':input', form).each(function() {
var type = this.type;
var tag = this.tagName.toLowerCase(); // normalize case
// it's ok to reset the value attr of text inputs,
// password inputs, and textareas
if (type == 'text' || type == 'password' || tag == 'textarea')
this.value = "";
// checkboxes and radios need to have their checked state cleared
// but should *not* have their 'value' changed
else if (type == 'checkbox' || type == 'radio')
this.checked = false;
// select elements need to have their 'selectedIndex' property set to -1
// (this works for both single and multiple select elements)
else if (tag == 'select')
this.selectedIndex = -1;
});
};
Кнопка сброса ввода
Вы можете поместить скрытый ввод типа reset и затем активировать его, чтобы очистить форму.
$('form > input[type=reset]').trigger('click'); //with a reset button in the form set to display: none;
Функция элемента jQuery
$.fn.clearForm = function() {
return this.each(function() {
var type = this.type, tag = this.tagName.toLowerCase();
if (tag == 'form')
return $(':input',this).clearForm();
if (type == 'text' || type == 'password' || tag == 'textarea')
this.value = '';
else if (type == 'checkbox' || type == 'radio')
this.checked = false;
else if (tag == 'select')
this.selectedIndex = -1;
});
};
//usage
$('#flightsSearchForm').clearForm();