Javascript 如何阻止动态加载的表单使用jquery提交?
我正在开发一个AJAX登录系统。现在,当用户单击链接时,当用户单击“登录”链接时,登录表单将动态加载。因为我使用AJAX来实现这一点,所以我希望在单击submit按钮时防止表单实际提交。作为加载函数的一部分,我尝试了以下代码,表单加载正确,但表单仍然正常提交Javascript 如何阻止动态加载的表单使用jquery提交?,javascript,jquery,Javascript,Jquery,我正在开发一个AJAX登录系统。现在,当用户单击链接时,当用户单击“登录”链接时,登录表单将动态加载。因为我使用AJAX来实现这一点,所以我希望在单击submit按钮时防止表单实际提交。作为加载函数的一部分,我尝试了以下代码,表单加载正确,但表单仍然正常提交 $('#loginBox').load('loginform.php'); $('#loginBox form').submit(function(event) { event.preventDefault(); }); 如何修复此问题
$('#loginBox').load('loginform.php');
$('#loginBox form').submit(function(event) {
event.preventDefault();
});
如何修复此问题?添加return false以防止出现默认行为:
$('#loginBox form').submit(function(event) {
return false;
});
jQuery.load是一个异步函数。 这意味着,当您尝试匹配“#loginBox form”时,该表单可能(尚未)可用。 要确保在加载表单后执行代码,必须将代码作为要加载的回调函数传递
$('#loginBox').load("form.html", function() {
$('#loginBox form').submit(function(event) {
event.preventDefault();
});
});
顺便说一句-在您的情况下,无论是使用event.preventDefault()还是return false,都没有关系。它们都会阻止您提交表单。(见附件)
$('#loginBox').load("form.html", function() {
$('#loginBox form').submit(function(event) {
event.preventDefault();
});
});