jQuery:将文本添加到现有的动态HREF

时间:2010-02-12 14:41:19

标签: jquery href

我正在尝试使用jQuery修改链接。链接是动态生成的,我无法控制现有的HREF,因为它们是从第三方站点调用的。

使用jQuery,如何更改链接:

example.com/?one=1&two=1

到此:

example.com/?one=1&two=1&thisisadded=true

所以基本上将&thisisadded=true添加到链接的末尾?

需要更改的链接位于他们自己的div中,类为my-link

3 个答案:

答案 0 :(得分:12)

$('a.my-link').each(function () {
    var href = $(this).attr('href');
    $(this).attr('href', href + '&thisisadded=true');
});

使用jQuery选择器替换选择器,该选择器将匹配您站点上的相应链接(如果我的不好)。

答案 1 :(得分:2)

var href = $(this).attr('href');
 $(this).attr('href', href + '&thisisadded=true')

显然,在this是您的链接

的情况下执行此操作

答案 2 :(得分:1)

只需使用您的选择器和attr的回调函数即可。这会将附加部分添加到每个匹配的链接:

$('a.my_link').attr('href', function(i, a){ return a + "&thisadded=true" });

在向attr方法提供回调时,第一个参数是index,第二个参数是原始attribute值。无论从回调中返回什么,都会成为新值。

注意:此功能在 jQuery 1.1 及更高版本中可用。不要将此方法与接受jQuery 1.4中引入的回调的新批处理方法混淆。