我有一个带有jquery验证的表单。提交表单后,我通过Ajax加载相同的表单。 我的问题是jquery验证不适用于ajax加载的表单。 我已经尝试了堆栈溢出的一些答案,但不幸的是没有工作。
由于 AZ
答案 0 :(得分:5)
使用 on 功能。
示例:
$(document.body).on('click', '.submitBtn', function(){
$("#form").validate({
submitHandler: function() {
// do anything
}
});
});
答案 1 :(得分:1)
从描述中可以看出新的DOM元素会给你带来问题。这是一个非常普遍的问题。你需要做的是 - 如果验证是在按钮的单击功能上运行,那么将其从.click更改为.live功能。 = http://api.jquery.com/live/
此函数还验证新的DOM元素。 click函数仅适用于初始DOM中存在的那些元素。
如果您仍有问题,请分享代码。
答案 2 :(得分:0)
将新表单加载到DOM后,需要在其上重新初始化验证插件,因为它与您之前加载的DOM元素不同。您需要在AJAX回调函数中执行此操作,该函数将新HTML加载到DOM中。