【问题标题】:More API examples needed for mailchimp - send data then redirectmailchimp 需要更多 API 示例 - 发送数据然后重定向
【发布时间】:2013-10-06 15:23:56
【问题描述】:

我对 mailchimp 比较陌生,并且一直在使用这篇文章来实现一个非常简单的电子邮件捕获表单,该表单将在提交时重定向到新的登录页面。我一直在使用这个帖子: using an existing form to send data to mailchimp, then redirect

我了解帖子中的所有内容,但我需要此声明的示例:

“但是,如果您想重定向,您只需更改您的 jQuery ajax 函数即可。”

谁能提供一个如何改变 jQuery ajax 函数的例子?另外我不需要它来返回成功或失败消息,我只需要它来捕获名称/电子邮件,然后立即重定向到下一页。

谢谢

【问题讨论】:

    标签: php jquery ajax api mailchimp


    【解决方案1】:

    Sparky 是说您可以修改 AJAX 的 success 函数,该函数是绑定到表单 $('#signup') 的提交函数的一部分。

    即,当前成功函数为:

    ...
    success: function(msg) {
            $('#message').html(msg);
        }
    ...
    

    你可以更新重定向做类似的事情:

    ...
    success: function(msg) {
            document.location = '/target/path/file.html';
        }
    ...
    

    编辑 - 执行上述操作将重定向浏览器 - 只要 AJAX 调用成功(不一定是 API 调用成功。)所以即使 PHP 在消息中返回错误 - 调用成功函数因为它指的是AJAX调用本身的成功。

    如果您只想在 PHP 文件返回的成功消息上重定向,那么您必须检查传入的 msg 并进行相应的处理。

    ...
    success: function(msg) {
      if (msg.indexOf('Success') != -1) {
       document.location = '/target/path/file.html';
      } else {
       $('#message').html(msg);
      }
    }
    ...
    

    这将在 PHP 文件成功返回消息时重定向浏览器,否则它将在 $('#message') 中显示消息。

    【讨论】:

    • 乔尔感谢您的快速回复。我还需要在 store-address.php 文件中更改什么吗?现在 php 已设置为验证电子邮件,并向用户显示错误或成功消息。我真的不需要显示任何消息,只需将电子邮件发布到我的 mailchimp 列表中,然后将它们重定向到下一页。我认为当我更新 ajax 时,它一定与 PHP 冲突,因为它不再存储地址。
    • 知道了...在答案中查看我的编辑。 AJAX 中的成功仅意味着 AJAX 调用成功 - 其中包含的消息很好地包含错误字符串。
    猜你喜欢
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    • 2011-08-10
    • 1970-01-01
    • 2016-09-04
    • 2019-08-01
    • 2019-09-21
    • 1970-01-01
    相关资源
    最近更新 更多