我使用此代码从 URL 中获取 Google 的 utm_campaign,并将其插入到隐藏的表单字段中:
<script type="text/javascript">
function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if (pair[0] == variable) {
return pair[1];
}
}
}
function onLoad() {
var value = getQueryVariable("utm_campaign");
var e = document.getElementById('keyword');
e.value = value;
}
</script>
该代码在根 URL 中运行良好,但当我在子目录中使用它时,它会停止运行。
site.com/?utm_campaign=test - 有效
site.com/directory/?utm_campaign=test - 不起作用
如何获取目录中的 URL 字符串?
谢谢!
最佳答案
无论您是在根 url 还是在子目录中,该代码的功能都应该完全相同。
就您的情况而言(根据您评论中的示例),onLoad
似乎是这样的:函数仅在您的根 URL 上运行,因为 body
标签定义为 <body onload="onLoad()">
为了拥有onLoad
在子目录页面上执行的函数,您需要包含 onload="onLoad()"
也在这些页面上的正文标记中。
关于javascript - 如何获取目录中的 URL 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36904257/