我使用下面的代码提交表单并在 weber 电子邮件列表中注册(addlead.pl 只是一个注册脚本)。这是我想要完成的事情:用户提交一个表单 - 它在 aweber 电子邮件列表中注册他(使用许多表单字段中的两个),因为它是注册表单,然后用户被重定向到正常的表单操作 url,其中包含来自表单的发布信息(所有领域)
$('#redeemform').submit(function() {
var nameVal = $(this).find('input[name="custname"]').val();
var emailVal = $(this).find('input[name="custemail"]').val();
$.post('http://www.aweber.com/scripts/addlead.pl', {
meta_web_form_id: '1234',
meta_split_id: '',
listname: 'listname',
redirect: '',
meta_adtracking: 'newsletter',
meta_message: '1',
meta_required: 'name,email',
meta_tooltip: '',
email: emailVal,
name: nameVal
});
alert("thank you"); //<<magic line
return true;
});
代码有效,但只能使用魔术线 - 警告“谢谢” - 如果没有这条线,它只会提交默认表单操作而不注册到 aweber。我发现如果我尝试提交表单(返回 true)并同时发送这样的 POST 请求 - 站点将刷新太快并且忽略其中一个请求。 问题是我如何在这条线上没有警报/一些固定延迟的情况下做到这一点。有什么花哨的命令吗?