当前位置: 首页 > 面试题库 >

AJAX Mailchimp注册表单集成

壤驷旭
2023-03-14
问题内容

是否有任何方法可以将简单的mailchimp(一个电子邮件输入)与AJAX集成在一起,所以没有页面刷新,也没有重定向到默认mailchimp页面。

谢谢


问题答案:

您不需要API密钥,只需将标准mailchimp生成的表单放入代码中(根据需要自定义外观),然后将表单的“
action”属性更改post?u=post- json?u=,然后在表单末尾进行操作附加&c=?以解决任何跨域问题。同样重要的是要注意,提交表单时必须使用GET而不是POST。

默认情况下,您的表单标签如下所示:

<form action="http://xxxxx.us#.list-manage1.com/subscribe/post?u=xxxxx&id=xxxx" method="post" ... >

改变它看起来像这样

<form action="http://xxxxx.us#.list-manage1.com/subscribe/post-json?u=xxxxx&id=xxxx&c=?" method="get" ... >

Mail Chimp将返回一个包含2个值的json对象:’result’-这将指示请求是否成功(我只见过2个值,“error”和“success”)和’msg’-一条消息描述结果。

我使用以下jQuery提交表单:

$(document).ready( function () {
    // I only have one form on the page but you can be more specific if need be.
    var $form = $('form');

    if ( $form.length > 0 ) {
        $('form input[type="submit"]').bind('click', function ( event ) {
            if ( event ) event.preventDefault();
            // validate_input() is a validation function I wrote, you'll have to substitute this with your own.
            if ( validate_input($form) ) { register($form); }
        });
    }
});

function register($form) {
    $.ajax({
        type: $form.attr('method'),
        url: $form.attr('action'),
        data: $form.serialize(),
        cache       : false,
        dataType    : 'json',
        contentType: "application/json; charset=utf-8",
        error       : function(err) { alert("Could not connect to the registration server. Please try again later."); },
        success     : function(data) {
            if (data.result != "success") {
                // Something went wrong, do something to notify the user. maybe alert(data.msg);
            } else {
                // It worked, carry on...
            }
        }
    });
}


 类似资料:
  • 用户资料页面已经可以访问了,但内容还不完整。下面我们要为网站创建一个注册表单。如图 5.9 和图 7.10 所示,“注册”页面还没有什么内容,无法注册新用户。本节会实现如图 7.11 所示的注册表单,添加注册功能。 图 7.9:添加侧边栏和 CSS 后的用户资料页面图 7.10:注册页面现在的样子 因为我们要实现通过网页创建用户的功能,那么就把 6.3.4 节在控制台中创建的用户删除吧。最简单的方

  • 我有麻烦处理错误在我的注册表格特别是与密码1 以下是我的看法。py: 最后是模板文件: 一切正常,我可以在用户注册时对他们进行身份验证,登录并重定向他们,但如果注册表单中存在错误,那么我无法让用户了解哪个字段负责并在提交之前进行更正。 你知道如何确保显示密码吗

  • 源代码 ENS注册表是ENS系统中的核心合约,所有的ENS查询都从注册表开始。注册表负责管理域名列表,记录每个域名的所有者、解析器和TTL,并允许域名的所有者对这些数据进行更改。 ENS注册表的详细信息请参阅EIP137。 获取所有者 function owner(bytes32 node) external view returns (address); 1 以上函数返回node所标识域名的所有

  • 问题内容: 我一直在将RMI用于当前正在处理的项目,并且希望将多个主机绑定到单个RMI注册表。 但是,当我尝试这样做时,我收到一条错误消息: java.rmi.AccessException:不允许Registry.Registry.bind;origin / 192.168.0.9是非本地主机 我这样做是在谷歌上进行的,似乎RMI默认情况下会阻止远程主机进行绑定,我想知道是否有某种方法可以覆盖或

  • 获取指定的注册表子键的内容,每次一个项目。 Loop, RootKey [, Key, IncludeSubkeys?, Recurse?] 参数 RootKey 必须为 HKEY_LOCAL_MACHINE(或 HKLM)、HKEY_USERS(或 HKU)、HKEY_CURRENT_USER(或 HKCU)、HKEY_CLASSES_ROOT(或 HKCR)或 HKEY_CURRENT_CON

  • 我使用来自Confluent的Kafka Connect来使用Kafka流并以拼花格式写入HDFS。我正在1个节点中使用架构注册表服务,它运行良好。现在我想将模式注册表分发到集群模式以处理故障转移。关于如何实现这一点的任何链接或片段都将非常有用。