【发布时间】:2019-07-16 18:50:28
【问题描述】:
如果重要的话,我在 Pardot 工作,但有一些 javascript 会将 GA utm 参数写入隐藏字段。
不幸的是,如果任何值是空白的,它将传递该空白值,并覆盖任何现有值。 我能够覆盖现有值很重要,但前提是查询字符串中有数据。
是否可以改为写入默认值?例如,提交一个没有 utm_source 的表单,然后我们写 Source="Organic",或者类似的东西。
这是我的代码:
<script type="text/javascript">
// Parse the URL
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
// Give the URL parameters variable names
var source = getParameterByName('utm_source');
var medium = getParameterByName('utm_medium');
var campaign = getParameterByName('utm_campaign');
var campaign = getParameterByName('utm_content');
// Put the variable names into the hidden fields in the form. selector should be "p.YOURFIELDNAME input"
document.querySelector("p.source input").value = source;
document.querySelector("p.utm_medium input").value = medium;
document.querySelector("p.utm_campaign input").value = campaign;
document.querySelector("p.utm_content input").value = content;
</script>
非常感谢您的洞察力!
【问题讨论】:
标签: javascript forms utm