【问题标题】:jQuery how to remove an appended A tag with a given idjQuery如何删除具有给定ID的附加A标签
【发布时间】:2016-09-14 11:19:58
【问题描述】:

我刚刚附加了一个 A 标签,我正在尝试删除它,谢谢您的帮助。

HTML:

<div>
    <p id="header"></p>
</div>

jQuery:

$(document).ready(function (e) {
    // Append A tag with id= Test1
    $('#header').append("<a href='#' id='Test1'> Test1</a>");

    // Remove the tag - it doesn't work.
    $('#header').remove("a#Test1");
}

【问题讨论】:

  • 使用$('#header a#Test1').remove();
  • 我也不想删除标题,只删除 ID 为 Test1 的 A 标记。
  • the API documentation最轻微一瞥回答了这个问题。
  • guradio 的上述建议并未删除#header(但其中的#headera 部分完全没有必要)。
  • @Ado 它是我从您的选择器派生的选择器,这意味着在带有 id Test1 的 id 标头锚中,但您可以使用 $('#Test1').remove(); 作为 T.J.在说

标签: javascript jquery tags


【解决方案1】:

$(document).ready(function(e) {
  // Append A tag with id= Test1
  $('#header').append("<a href='#' id='Test1'> Test1</a>");

  // Remove the tag - it doesn't work.
  $('#header a#Test1').remove();
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
  <p id="header"></p>
</div>

使用$('#header a#Test1').remove();

但您只需要$('#Test1').remove() 即可删除该特定元素

【讨论】:

  • 为什么选择器中需要#header 才能删除? ID 必须是唯一的
  • @charlietfl 我只是从 OP 原版中派生出来,但 $('#Test1').remove() 就足够了
  • #header a#Test1唯一 原因是如果 OP 想要避免删除不是 a 或不在 @987654329 内的元素@.
  • @T.J.Crowder 你说得对,但被删除的元素使用的 ID 将是无效的 HTML 标记而不是唯一 ID
  • @guradio:我没有说他有不止一个。只是如果他只想删除它如果它在#headera 元素内,这才有意义。
【解决方案2】:

你也可以这样实现:

$('#header').empty();

【讨论】:

  • 如果header中还有其他元素不需要移除,这个就不行了
  • 我需要删除一个特定的标签。
  • 是的。同意你
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-16
  • 2012-10-15
  • 1970-01-01
  • 2012-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多