首页 > 解决方案 > 如何将当前 URL 参数添加到页面上的所有链接

问题描述

我对 Javascript 没有信心 - 希望有一种快速的方法可以从当前 URL 中获取参数并使用 javascript 将其添加到页面上的所有链接中。

例如当前 URL www.website.com/salespage?affiliate_id=1234 ,然后affiliate_id=1234添加到页面上所有链接的末尾,即 www.website.com/orderpage?affiliate_id=1234www.website.com/orderpage2?affiliate_id=1234

我一直在搜索 javascript 代码,但找到了一些捕获现有参数的代码,还有一些将参数插入 URL 但不知道如何使它们一起工作的代码?

<script>
  function getUrlParam(affiliate_id, defaultvalue){
    var urlparameter = defaultvalue;
    if(window.location.href.indexOf(parameter) > -1){
        urlparameter = getUrlVars()[parameter];
        }
    return urlparameter;
}

  var addthis_share = {
     url_transforms : {
         add: {
             affiliate_id: urlparameter,
         }
     } 
} 
</script>

我希望将 URL 链接更新为 www.website.com/orderpage?affiliate_id=1234 目前根本不起作用

标签: javascript

解决方案


您可以在document readyjquery 上实现它,循环each标记并更新href属性以添加您的参数

$(function() {
   $("a").attr('href', function(index, item) {
     return item + (item.indexOf('?') != -1 ? "&affiliate_id=1234" : "?affiliate_id=1234");
   });
});

$(function() {
   $("a").attr('href', function(index, item) {
     return item + (item.indexOf('?') != -1 ? "&affiliate_id=1234" : "?affiliate_id=1234");
   });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h2>Test1</h2>
<a href="/test">Test1</a>
<h2>Test2</h2>
<a href="/test?param=1">Test2</a>


推荐阅读