我有一个来自表单提交的简单 ajax 调用。
它在我调试时有效,即弹出警报,但在运行时它不起作用?
这对我来说似乎有点神秘。
$(function(){
$("#signUpForm").submit(function(){
var request = $.ajax({
url:"php/newUser.php",
type:"POST"
});
request.done(function(msg){
alert(msg);
});
});
});
如果您在。提交()处理程序,Ajax 请求将触发,但随后表单将继续提交,从而刷新页面并且永远不会触发回调函数。
相反,你应该打电话event.preventDefault()
在提交处理函数的末尾,以防止浏览器使用新的 HTTP 请求正常提交表单。为此,您需要添加event
作为回调函数的参数,如下所示:
$( "#target" ).submit(function( event ) {
alert( "Handler for .submit() called." );
event.preventDefault();
});
它在调试时起作用的原因是,当您单步执行时,一切都会缓慢发生,而浏览器不会提交表单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)