我有这个包含用户详细信息的简单表(在提供的示例中为用户ID)。每个记录都有一个链接。此链接(实际)是基于no.of记录动态生成的。每条记录都有一个链接。点击此链接后,必须将相应用户的ID传递(附加)到另一个链接(我在示例中称为用户链接)。
我的HTML代码:
<a id="abc" href="aa/">User Link</a>
<hr>
<table border="1">
<tr>
<td><a id="xyz" data-userid="100" href="#">first user</a></td>
<td>100</td>
</tr>
<tr>
<td><a id="xyz" data-userid="200" href="#">second user</a></td>
<td>200</td>
</tr>
<tr>
<td><a id="xyz" data-userid="300" href="#">third user</a></td>
<td>300</td>
</tr>
</table>
的jQuery :
$(document).on('click','#xyz',function(e){
var uid = $(this).attr('data-userid');
$('#abc').attr('href',$('#abc').attr('href')+uid);
});
我基于上面的jQuery代码将用户ID附加到用户链接。
这就是我想要实现的目标:
第一位用户 <a id="abc" href="aa/100">User Link</a>
<a id="abc" href="aa/200">User Link</a>
<a id="abc" href="aa/300">User Link</a>
我得到了部分内容。
问题:
单击上一个链接后单击第二个链接时,这两个值都将附加到用户链接的末尾。
例如,如果我最初点击第一个用户,则用户链接将变为
<a id="abc" href="aa/100">User Link</a>
然后如果我点击第二个用户,则用户链接变为
<a id="abc" href="aa/100200">User Link</a>
依此类推......这不是我想要得到的。 我在哪里弄错了???
P.S :使用浏览器中的Inspect Element查看实时操作中的这个混乱。
答案 0 :(得分:0)
首先,不要有多个具有相同ID的元素。参见
Why is it a bad thing to have multiple HTML elements with the same id attribute?
其次,将初始href存储在var
中var initialHref = $('#abc').attr('href');
并更改
$('#abc').attr('href',$('#abc').attr('href')+uid);
到
$('#abc').attr('href',initialHref+uid);
看到它正常工作here
答案 1 :(得分:0)
几个问题:
class="xyz"
和click
处理程序.xyz
href
值,以便在后续点击时访问它。<强> Updated Fiddle 强>
var initHref = $('#abc').attr('href')
$(document).on('click','.xyz',function(e){
e.preventDefault(); // Prevent default action of `<a>`
var uid = $(this).attr('data-userid'); //or $(this).data('userid');
$('#abc').attr('href',initHref+uid);
});
答案 2 :(得分:0)
您可能希望存储用户链接的href并稍后使用它来附加新值,如下所示。
P.S。请将 ID xyz
更改为课程
演示@ Fiddle
$(function() {
var userLink = $('#abc')[0];
var linkHref = userLink.href;
$(document).on('click','.xyz',function(e) {
e.preventDefault(); //Cancels the default behaviour
var uid = $(this).attr('data-userid');
userLink.href = linkHref + uid;
});
})
答案 3 :(得分:0)
与您使用revents
的方式相同,您可以在第一个链接中使用data-userid
来存储您的初始和未修改的网址。
然后使用类似的东西:
data-href