我在一个页面上有一堆链接,在一个动作上,我运行一个函数,它会附加一个额外的变量,如下所示:
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>
答案 0 :(得分:2)
你确定storeId没有被调用两次吗?好像是。
答案 1 :(得分:1)
function storeId(uID) {
$('a.special').each(function(){
link = $(this).attr('href');
nlink = link + '&variable='+uID;
$(this).attr('href', newlink);
});
}
试一试。