javascript - 如何删除其中没有连字符的任何元素

标签 javascript jquery

我有一个标签列表,其中大部分标签以连字符开头。我想删除或隐藏所有不包含此字符的标签。由于对代码的访问有限,因此必须使用 jQuery/javascript 来完成。我的尝试不起作用,如何修复?

这是我的 HTML:

<div class="widget Label" data-version="2" id="Label1">
  <h3 class="title">
    Tags
  </h3>
  <div class="widget-content cloud-label-widget-content">
    <span class="label-size label-size-5">
      <a class="label-name" href="https://about.xarcell.studio/search/label/art">
        art
        <span class="label-count">
          10
        </span>
      </a>
    </span>
    <span class="label-size label-size-5">
      <a class="label-name" href="https://about.xarcell.studio/search/label/-gallery">
        -gallery
        <span class="label-count">
          9
        </span>
      </a>
    </span>
    <span class="label-size label-size-5">
      <a class="label-name" href="https://about.xarcell.studio/search/label/-photography">
        -photography
        <span class="label-count">
          9
        </span>
      </a>
    </span>
    <span class="label-size label-size-5">
      <a class="label-name" href="https://about.xarcell.studio/search/label/-portfolio">
        -portfolio
        <span class="label-count">
          9
        </span>
      </a>
    </span>
    <span class="label-size label-size-5">
      <a class="label-name" href="https://about.xarcell.studio/search/label/opinion">
        opinion
        <span class="label-count">
          9
        </span>
      </a>
    </span>
  </div>
</div>

Javascript:

$('#label1').each(function() {
    $('#label1 span').find(':not(:contains("-"))').remove();
});

最佳答案

jQuery

jQuery(function($) {
  $(`.label-size:not(:contains("-"))`).remove();
});

普通 JavaScript

document.addEventListener("DOMContentLoaded", function(){
  for(let node of document.getElementsByClassName("label-size")) {
    if(!/-/.test(node.textContent)) {
      node.remove();    
    }
  }
});

关于javascript - 如何删除其中没有连字符的任何元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60662782/

相关文章:

java - 如何使用java和javascript在android中的web View 中填充字段

javascript - Ajax成功函数下定义函数运行延迟

javascript - css 未加载,因为它在 Meteor JS 中的 MIME 类型

jquery - 我可以使用 jQuery 用 <form></form> 包围一个元素吗?

javascript - 通过 scrollTop 改变元素的宽度

javascript - EcmaScript 5 浏览器实现

javascript - 用 jquery 交换不连续的元素?

javascript - 使用 jquery append 添加 svg 元素

javascript - 如何传递 javascript 对象而不是手动输入图像名称

javascript - JS Hashchange 事件的 msie 问题