如何解决使用jQuery从url参数中保存utm值
给定一个示例网址:
https://examplesite.com/?utm_source=google&utm_source_id=1234&utm_medium=example&utm_campaign=secured&utm_term=get&utm_content=other
我正在尝试将我的 UTM 值保存到我的 html 中的隐藏字段:
<input id="campaign" name="campaign" class="Meta-form-data" type="text" value="" hidden />
<input id="source_id" name="source_id" class="Meta-form-data" type="text" value="" hidden />
<input id="source" name="source" class="Meta-form-data" type="text" value="" hidden />
<input id="channel" name="channel" class="Meta-form-data" type="text" value="" hidden />
<input id="keyword" name="keyword" class="Meta-form-data" type="text" value="" hidden />
<input id="content" name="content" class="Meta-form-data" type="text" value="" hidden />
当我从 url 保存我的 utm 值时,我使用这个函数:
function ParseTrackingUrl() {
var utm_source = getUrlParameter('utm_source');
var utm_source_id = getUrlParameter('utm_source_id');
var utm_medium = getUrlParameter('utm_medium');
var utm_campaign = getUrlParameter('utm_campaign');
var utm_term = getUrlParameter('utm_term');
var utm_content = getUrlParameter('utm_content');
jQuery("#source").val(utm_source);
jQuery("#source_id").val(utm_source_id);
jQuery("#campaign").val(utm_campaign);
jQuery("#channel").val(utm_medium);
jQuery("#keyword").val(utm_term);
jQuery("#content").val(utm_content);
}
然后从 URL 中获取每个 utm 值:
var getUrlParameter = function getUrlParameter(sParam) {
var sPageURL = window.location.search.substring(1),surlvariables = sPageURL.split('&'),sParameterName,i;
for (i = 0; i < surlvariables.length; i++) {
sParameterName = surlvariables[i].split('=');
if (sParameterName[0] === sParam) {
return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);
}
}
};
utm_source
和 utm_source_id
没有正确保存。 utm_source_id
为空,utm_source
正在获取 source_id
值。我不确定这是怎么发生的。所有其他 utm 值都保存得很好。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。