#jquery #validation #jquery-ui-dialog
#jquery #проверка #jquery-ui-dialog
Вопрос:
Я получил свою форму в диалоговом окне пользовательского интерфейса jQuery и применяю к ней проверку на стороне клиента. Я хочу очистить все входные значения, а также любые сообщения о проверке, которые пользователь нажимает (x), чтобы закрыть диалоговое окно или кнопку «Отмена», перед отправкой формы.
Я попытался включить функцию очистки формы в событие «закрыть», но это не сработало:
//Load food form into dialog
var controllerUrl = '/Stock/GetFoodForm';
var $createdialog = $('#createfooddialog').load(controllerUrl).dialog({
autoOpen: false,
title: 'Create Food',
modal: true,
width: 'auto',
close: clear()
});
Функция очистки используется в функции в jquery.form.js плагин:
// Function to clear form data
function clear() {
$('#formData').resetForm();
$('.validation-summary-valid').val("");
}
Есть идеи, как я могу очистить все в форме, как только пользователь закроет диалоговое окно, даже если форма не отправлена?
Ответ №1:
Просто используйте clear
вместо clear()
.
Комментарии:
1. Или
close: function() { clear(); }
, хотяclose: clear
это совершенно законно.2. Большое спасибо!! Никогда не осознавал, что допустил такую ошибку .. и я изменил функцию очистки, чтобы очистить сообщение о проверке: function clear() { // Очистить все входные значения $(‘#FormData’).resetForm(); // Очистить итоговое сообщение о проверке $ (‘.validation-summary-errors span’).remove(); // Очистить сообщение об ошибке имени $(‘.field-validation-error span’).remove(); // Очистить сообщение об ошибке суммы $(‘.field-validation-valid span’).remove(); $(‘#FormData’).find(‘input’).removeClass(‘ошибка ввода-проверки’);