仅使用电子邮件参数填充表单

populate form with email parameters only

快速提问,我正在 post 对另一个 URL 上的表单进行 URL 查询(必须使用 URL 查询一些限制)

我的post

let url = 'https://go.mysite.com/form.html' + '?' + 'email =' + email_id;

然后我用它来自动填充表单电子邮件。

form.setValues({ Email : decodeURIComponent(document.location.search.substring('email')) }); 

问题是它用 ?emailmail@gmail.com* 填充电子邮件部分,而不仅仅是电子邮件 mail@gmail.com

只有当它是电子邮件时,我才需要填充表单,因为我们在表单页面上有多个 UTM 边界。

有人知道我如何编辑我的代码来让它工作吗?

我想采用不同的方法:

var address_bar_url = document.location.href
var url = new URL(address_bar_url)

var email = url.searchParams.get('email')

form.setValues({ Email : email }); 

单线解决方案:

form.setValues({ Email : (new URL(document.location.href)).searchParams.get('email') }); 

希望这能解决您的问题。