javascript - JQuery 从数组中删除特定元素

标签 javascript jquery arrays splice

我正在尝试从数组中删除某个元素 - 具体来说,.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>

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

谢谢!

最佳答案

更好的方法是检查元素的父 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> 

关于javascript - JQuery 从数组中删除特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60746838/

相关文章:

javascript - 脚本重叠/相互抵消?

javascript - 如何从这个嵌套数组中获取值

python - 在python中生成15分钟时间间隔数组

javascript - 根据复选框隐藏/显示表行

javascript - 除非我们重新部署 war 文件,否则 Js 更改不会反射(reflect)在浏览器中

javascript - 将 Onsen UI 与 Meteor.js 结合使用

javascript - Vuejs 购物车总变量返回 NaN

javascript - 多个类的选择不起作用

jquery - 将DIVs Bottom-Position和Height改为0,一个接一个,顺利

python - 重复/复制给定的 numpy 数组十次