我正在尝试将表单数据发送到MailChimp而不重定向到另一个页面。相反,我想要一个弹出窗口显示“谢谢你注册!”怎么能实现这一目标?我试图使用JQuery.post()来发送数据,但我不认为它是有效的,因为JQuery.post()的同源策略。 .fail()会运行,我无法从中获取任何错误消息。请帮忙。
[编辑]:添加了以下代码
$("form.newsletter-signup-form").submit(function(event) {
/* stop form from submitting normally */
event.preventDefault();
/* get some values from elements on the page: */
var url = "http://empirecovers.us1.list-manage1.com/subscribe/post";
/* Send the data using post */
var posting = $.post(url);
/* Put the results in a div */
posting.done(function(data) {
alert("done");
});
posting.fail(function(XMLHttpRequest, textStatus, errorThrown) {
alert("XMLHttpRequest: " + XMLHttpRequest.statusText);
alert("textStatus: " + textStatus);
alert("errorThrown: " + errorThrown);
});
posting.always(function() { alert("finished"); });
});
[注意]:我还想提一下,我正在使用ASP.NET来实现它。我注意到有一个用于.NET的MailChimp API来发送数据。
答案 0 :(得分:1)
您应该发布到您自己的ASP.NET页面或处理程序或控制器或您正在使用的任何内容,然后手动或通过API从Web服务器而不是客户端生成对MailChimp的请求。 / p>
这使您可以控制执行您需要的任何操作,包括传递任何密钥或MailChimp API所需的任何密钥,并且它可以让您控制您希望用户体验的确切内容,因为您将拥有能够通过AJAX发布到您自己的页面。