当通过jquery ajax调用动态加载内容时,我陷入了无法应用验证的境地...
我到处都找到了这个解决方案,但不知道如何使用在哪里编写这段代码??
$('form').removeData("validator");
$('form').removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse('form');
我的代码在我之前的问题中
当通过jquery ajax调用动态加载内容时,我陷入了无法应用验证的境地...
我到处都找到了这个解决方案,但不知道如何使用在哪里编写这段代码??
$('form').removeData("validator");
$('form').removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse('form');
我的代码在我之前的问题中
我确实意识到这是一个老问题。但它可能对将来来这里的人有用。
这就像在成功的 ajax 请求后运行上面的代码一样简单。
$.ajax({
url: editPageUrl,
contentType: 'application/html; charset=utf-8',
type: 'GET',
dataType: 'html',
data: { id: taskId },
cache: false,
success: function (data) {
var taskBody = $('#task-body');
$(taskBody).html(data);
var $form = $(taskBody).find('form');
$form.removeData("validator");
$form.removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse($form);
}
});
当 ajax 请求完成时,只需重置验证以使其正常工作。这样做会将所有元素添加到 jquery 验证中,并在 #taskeditform-body 内的表单上提交时触发验证