Sendinblue / Brevo:2个HTML表单相互干扰

Sendinblue/Brevo : 2 HTML-Forms interfere with each other

提问人:sylvain 提问时间:6/9/2023 最后编辑:sylvain 更新时间:7/17/2023 访问量:416

问:

我在我的一个网页中集成了 2 个 BREVO 表单(HTML/ajax 类型):

<form id="sib-form" method="POST" action="https://45ff9c8b.sibforms.com/serve/MUXXXX" data-type="subscription">

填写第二个表单的 2 个输入字段 EMAIL 和 FIRSTNAME 后,然后单击其提交按钮,

第一个表单的输入字段 EMAIL 显示错误:“必须填写”。enter image description here

在Brevo中检查了提供的复制/粘贴HTML-FORM底部所包含的脚本中的代码后:

<script defer="defer" src="https://sibforms.com/forms/end-form/build/main.js"></script>

该错误似乎是由此js文件中的Selection By Id引起的:

const y = document.querySelector("#sib-form");
y.addEventListener("submit", (e => { e.preventDefault();....

为了让 2 个表单可以在同一页面上工作,我以这种方式更改了 js,但它并没有解决问题:

<form class="sibform_snpt" id="sib-form" method="POST" action="https://45ff9c8b.sibforms.com/serve/MUXXXX" data-type="subscription">
const y_forms = document.querySelectorAll('.sibform_snpt');
for (let i = 0; i < y_forms.length; i++) {
     y= form[i];
     y.setAttribute("novalidate", "true"),
     y.addEventListener("submit", (e => { e.preventDefault();

AJAX 表单 提交 SendinBlue

评论


答:

0赞 Oberdan 7/17/2023 #1

在 Brevo 帮助网站上,我发现您需要使用 iFrame 在同一页面上显示多个表单: https://help.brevo.com/hc/en-us/articles/360019846960-Create-a-subscription-form-Troubleshooting-FAQ https://help.brevo.com/hc/en-us/articles/360019846960-Create-a-subscription-form-Troubleshooting-FAQ

评论

0赞 Aaron Meese 7/27/2023
请不要发布仅链接的答案,而是将链接的相关药水复制到您的答案中。