我有两个ID相同的链接。
<a class='showtag' id=" . $row['id'] . " href=''>" . $row['name'] . "</a><a class='removetag' id=" . $row['id'] . " href=''> -</a><br />";
如何通过点击第二个删除第一个。
我只需要选择器与jquery remove()一起使用。
编辑:我试过这个:$("a[id='" + event.target.id + "']").remove();
但问题是它还删除了所有其他具有相同ID的链接(我现在已将它们切换到类)。
所以我需要一个选择器,在触发链接之前删除链接,并且它是它的兄弟(或者在触发链接旁边)。
感谢
答案 0 :(得分:4)
您不应该有两个具有相同ID的DOM元素。
假设ID属性是唯一的,您将遇到问题并且跨浏览器不一致。
我建议你在链接中使用一个类,而不是重复ID。
但由于这两个锚是兄弟姐妹,你可以这样做(注意你不需要id
):
$('.removetag').click(function () {
$(this).prev('.showtag').remove();
});
答案 1 :(得分:0)
我建议改为从.removetag链接中删除ID。我认为您将拥有上述解决方案的问题是,您将删除所有具有“showtag”类的链接。您确实需要一个具有唯一ID的链接。我建议:
<a class='showtag' id=show_" . $row['id'] . " href=''>" . $row['name'] . "</a>
<a class='removetag' id=remove_" . $row['id'] . " href='' onclick="$('#show_" . $row['id'] . "'").remove();"> -</a>
<br />";