如何浏览页面上的每个链接并使用jQuery附加内容?

时间:2009-07-23 23:13:41

标签: jquery

我在一个页面上有一堆链接,在一个动作上,我运行一个函数,它会附加一个额外的变量,如下所示:

function storeId(uID) {

$('a.special').each(function(){

    $(this).attr('href',$(this).attr('href')+'&variable='+uID+'');

});

}

我的理解是,上面将通过识别的每个链接,并获取现有的href,然后将变量位附加到末尾。我有变量追加,但它没有按预期工作...例如,它第一次附加'& variable ='部分,第一次,如'& variable = undefined',然后在'& variable =&变量= 23' 。

有更好的方法吗?或者我只能说通过这些链接,只是更新设置为变量的值而不是重写整个href?

所以只是为了重新迭代,我原来的链接是这样的:

<a class="special" href="/page.php?random=1">link name</a>

目的是在执行功能后让它看起来如下:

<a class="special" href="/page.php?random=1&variable=32">link name</a>

但它看起来像是:

    <a class="special" href="/page.php?random=1&variable=undefined&variable=32">link name</a>

2 个答案:

答案 0 :(得分:2)

你确定storeId没有被调用两次吗?好像是。

答案 1 :(得分:1)

function storeId(uID) {
    $('a.special').each(function(){
        link = $(this).attr('href');
        nlink = link + '&variable='+uID;
        $(this).attr('href', newlink);
    });
}

试一试。