如何从javascript或jquery中的元素数组中删除特定元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从javascript或jquery中的元素数组中删除特定元素相关的知识,希望对你有一定的参考价值。

例:

<div id="Elmnt_1" class="MyElement">
<div id="Elmnt_2" class="MyElement">
<div id="Elmnt_3" class="MyElement">
<div id="Elmnt_4" class="MyElement">

如何选择具有class =“MyElement”的所有元素,并使用特定的id省略其中的一个元素

我猜:

var fltrdElmnts = $(".MyElement").filter(! $( "#Elmnt_2" ) );
fltrdElmnts.remove();

预期结果:

<div id="Elmnt_2" class="MyElement">
答案

您可以在选择器内使用:not()伪类。

$(".MyElement:not(#Elmnt_2)")

$(".MyElement:not(#Elmnt_2)").css('color', 'red')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="Elmnt_1" class="MyElement">Div</div>
<div id="Elmnt_2" class="MyElement">Div</div>
<div id="Elmnt_3" class="MyElement">Div</div>
<div id="Elmnt_4" class="MyElement">Div</div>
另一答案

你可以使用:not()选择器

var fltrdElmnts = $(".MyElement:not(#Elmnt_2");

演示:

$(function() {
  var fltrdElmnts = $(".MyElement:not(#Elmnt_2");
  fltrdElmnts.remove();
  /* or just:
  $(".MyElement:not(#Elmnt_2").remove();
  */
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="Elmnt_1" class="MyElement">Elmnt_1</div>
<div id="Elmnt_2" class="MyElement">Elmnt_2</div>
<div id="Elmnt_3" class="MyElement">Elmnt_3</div>
<div id="Elmnt_4" class="MyElement">Elmnt_4</div>
另一答案

使用此选择器MyElement:not(#Elmnt_2)

var fltrdElmnts = $(".MyElement:not(#Elmnt_2)");
fltrdElmnts.remove();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="Elmnt_1" class="MyElement">a</div>
<div id="Elmnt_2" class="MyElement">b</div>
<div id="Elmnt_3" class="MyElement">c</div>
<div id="Elmnt_4" class="MyElement">d</div>

以上是关于如何从javascript或jquery中的元素数组中删除特定元素的主要内容,如果未能解决你的问题,请参考以下文章

如何在 DOM(javascript 或 jquery)中显示元素的值?

如何使用 javascript 或 jquery 为每个数组元素设置背景颜色和边框?

如何从 jquery 或 javascript 中的两个不同数组中查找唯一记录?

javascript 对象中的元素数

如何在jquery或javascript中获得小数点后的精确两位数

如何使用 Jquery 或 Javascript 定位附加元素,或者如何将该附加元素添加到 DOM?