[英]Execute ajax request on form submit and don't wait for response
我想在用户尝试提交表单时提出AJAX请求。 但是,我不想等待响应(我只想触发脚本)而仍然立即提交表单(或重定向用户)。
我试图以这种方式(通过jQuery):
$(document).ready(function()
{
$("#form").submit(function(e)
{
// save object reference
var form = this;
// prevent form submit
e.preventDefault();
// trigger ajax request
$.ajax({
url: 'ajax.php',
data: { ... },
cache: false
});
// submit form
form.submit();
// return false just in case
return false;
});
});
但这是行不通的,因为如果随后立即提交表单(通过form.submit()
),则浏览器实际上不会发送AJAX请求。
我在这里有点困惑……真的没有办法触发AJAX请求并随后立即重定向浏览器吗?
看来您在这里创建了一个无限循环。 您正在阻止Submit事件,并在最后再次提交它,但是当您将函数绑定到表单的提交时,将一遍又一遍地调用它。 相反,尝试使用Ajax状态,例如成功和完成; 成功后,您提交数据,完成后,您将重定向页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.