我设置了一个简单的电子邮件 ID 表单,可在多个页面上重复使用。我目前已经在每次填写表格时给我发送一封邮件,其中包括该人填写的邮件 ID。不过,我还想知道此人在哪个页面 (URL) 上填写了表格,因为这有助于我们的销售团队获得更多背景信息。
我试图通过包含一个隐藏字段来做到这一点:
<input type="hidden" id="msg" name="message" value="my_hidden_field">
然后我在页面末尾添加了一个脚本:
function setWindowURL(){
current_URL = window.location.href;
document.getElementById('msg').value = current_URL;
console.log(document.getElementById('msg').value);
}
然后我在发送给自己的邮件中包含了这个参数(使用表单的 POST API 访问):
html: '<br><b>Email</b>: '+req.body.email+'URL: '+req.body.message // html
我看到控制台显示了正确的信息,但邮件只是发送“my_hidden_field”作为 URL 的值。我认为这是因为脚本在页面加载之前运行,因此还添加了一个 body.onload:
<body onload="setWindowURL();">
然而,即使这样也无济于事。
当我登录 req.body 时,这是我在服务器日志中看到的:{ email: 'example@gmail.com', message: 'my_hidden_field' }
我只想收到邮件 ID 和填写表格的 URL。对此有什么想法吗?
最佳答案
我的错。我在导致此错误的页面上多次使用相同的 ID。否则,上述实现有效。
关于javascript - 查找填写表格的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57669068/