Javascript 使用JS/jQuery更改脚本标记中的参数值

Javascript 使用JS/jQuery更改脚本标记中的参数值,javascript,jquery,html,Javascript,Jquery,Html,因此,我尝试使用JS或jQuery更改参数的值。我有一个如下所示的url: www.exampleurl.com/somepage?foo=test <div class="bonus-button"> <script language="javascript" type="text/javascript" src="https://t.tellja.eu/widget/button/PSIGn2?skin=194&t_mc=kwk&btn=rec_s

因此,我尝试使用JS或jQuery更改参数的值。我有一个如下所示的url:

www.exampleurl.com/somepage?foo=test
<div class="bonus-button">
    <script language="javascript" type="text/javascript" src="https://t.tellja.eu/widget/button/PSIGn2?skin=194&t_mc=kwk&btn=rec_somecompany"></script>
</div>
我已经有了在foo之后获取值的代码,即:

function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, '\\$&');
    var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, ' '));
}

var foo = getParameterByName('foo');
我现在有一个页面,其中HTML代码如下所示:

www.exampleurl.com/somepage?foo=test
<div class="bonus-button">
    <script language="javascript" type="text/javascript" src="https://t.tellja.eu/widget/button/PSIGn2?skin=194&t_mc=kwk&btn=rec_somecompany"></script>
</div>

到目前为止,我还没有找到真正有用或有效的东西。你们对我可以使用的东西有什么建议吗,例如替换不起作用。

使用
document.querySelector
获取脚本标记,并使用
getAttribute
从脚本中获取
src
。在使用
split
join
获得的字符串中,替换该值并使用
setAttribute

var a=document.querySelector('.bonus button>script').getAttribute('src'))
document.querySelector('div>script').setAttribute('src',a.split('t\u mc=kwk').join('t\u mc=value.of.foo'))


不确定更改已运行的
标记的src是否会达到您认为的效果。看起来像是XY问题,您希望加载不同的脚本。更改某个
标记的url对于您现有的代码来说是微不足道的。快速搜索(可能还有其他)会发现这似乎是您的实际问题:就目前的问题而言,在您的示例中,请参阅可能的重复项,这似乎是可行的,但我得到了未捕获的TypeError:无法读取null的属性“split”。Why is=Edit:我现在有了它,非常感谢您解释了您所做的一切:)这可能是因为querySelector通常用于div和其中的脚本。我已经做了编辑,现在它将只适用于给定的div,前提是没有其他具有相同类的div。还要确保有一个脚本标记,并且还有一个src属性。是的,那是我的错误:(再次感谢你救了我一天:)