【问题标题】:JQuery Remove Specific Element From ArrayJQuery 从数组中删除特定元素
【发布时间】:2020-06-29 23:28:02
【问题描述】:

我正在尝试从我的数组中删除某个元素 - 具体来说,.top-header .header-info .header-phone a。同时,我正在尝试互相获取.top-header .header-info a 的实例,这是我的代码:

var anchorArray = [];
var titleArray = [];
$('.top-header .header-info a').each(function() {
    var removeItem = $('.top-header .header-info .header-phone a')
    anchorArray.push($(this).attr('href'));
    anchorArray.splice($.inArray(removeItem,anchorArray), 1);
    titleArray.push($(this).html());
    titleArray.splice($.inArray(removeItem,titleArray), 1);
});

<div class="header-info">
  <span class="header-phone"><a href="tel:314-533-1500">314.533.1500</a>&nbsp;or&nbsp;<a href="tel:800-777-2852">1-800-777-ATLAS</a></span>
  <a href="comingsoon">Request a Consultation</a>
  <a href="quickpad">Quick Order</a>
  <a href="contactus">Contact Us</a>
</div>

目前,这似乎正在删除链接的所有实例。

谢谢!

【问题讨论】:

  • 同时添加 html
  • 已添加!呜呜呜
  • 您要删除哪个特定标签?.top-header .header-info .header-phone a 这将删除所有列表。
  • 我正在尝试从数组中删除整个标题电话范围,但保留剩余的三个 a 标签

标签: javascript jquery arrays splice


【解决方案1】:

更好的方法是检查元素的父 div 是否不包含您要删除的类。如果没有,则添加该元素。

   <!DOCTYPE html>
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    </head>
    <body>

    <div class="header-info">
      <span class="header-phone">
      <a href="tel:314-533-1500">314.533.1500</a>&nbsp;or&nbsp;
      <a href="tel:800-777-2852">1-800-777-ATLAS</a></span>
      <a href="comingsoon">Request a Consultation</a>
      <a href="quickpad">Quick Order</a>
      <a href="contactus">Contact Us</a>
    </div>

    <script>
    var anchorArray = [];
    var titleArray = [];
    $('.header-info a').each(function(e,s) {
        if(s.parentNode.className !=="header-phone"){
          console.log(s.parentNode.className);
          anchorArray.push($(this).attr('href'));
          console.log("anchorArray:"+anchorArray);
          titleArray.push($(this).html());
        }
    });

    console.log(titleArray);
    </script>
    </body>
    </html> 

【讨论】:

    猜你喜欢
    • 2019-06-03
    • 2018-08-13
    • 2021-04-21
    • 2016-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多