Newsletter2Go - 使用javascript填写表格后无效?

Bla*_*ack 2 javascript newsletter newsletter2go

我尝试使用客户数据自动填写newsletter2go表单.表单是使用javascript代码动态创建的,我是从newsletter2go后端获得的.

但我发现,如果我使用javascript填充它,表单将不再起作用了!?如果我手动填充它,它的工作原理非常好.

我从开发者控制台执行了这段代码:

    var inputEmail = document.getElementsByClassName("newsletterInput")[0],
        inputVorname = document.getElementsByClassName("newsletterInput")[1],
        inputNachname = document.getElementsByClassName("newsletterInput")[2],
        selectAnrede = document.getElementsByClassName("newsletterSelect")[0];

    if (inputEmail.value == "") {
        inputEmail.value = 'foo@bar.de';
    }

    if (selectAnrede.value == "") {
        selectAnrede.value = 'm';
    }

    if (inputVorname.value == "") {
        inputVorname.value = 'Edward';
    }
    if (inputNachname.value == "") {
        inputNachname.value = 'Black';
    }
Run Code Online (Sandbox Code Playgroud)

表格已经填满,但如果我提交,那么我会看到抱歉,发生了错误.请检查您的数据.

此时请求有效负载: 在此输入图像描述

为什么会失败?


如果浏览器自动填写表单,那么它的工作顺便说一句.

Hor*_*ren 6

表单的工作方式是它只会更新onchange.这意味着如果您手动触发,您的代码将起作用.

由于这看起来有点像解决方法,因此更清晰的解决方案是实现它,类似于Newsletter2Go主页上的示例表单实现.
相应的帮助文章可以在这里找到(仅限德语​​atm).

BTW,Newsletter2Go 提供了一个收件人资料链接,可以自动填写表格中的客户数据.也许你可以改用它.