Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查找包含一个数组元素的元素_Javascript_Jquery_Arrays_Loops - Fatal编程技术网

Javascript 查找包含一个数组元素的元素

Javascript 查找包含一个数组元素的元素,javascript,jquery,arrays,loops,Javascript,Jquery,Arrays,Loops,我有一个元素列表,每个元素都有一个数字ID,我正在创建一个过滤器对它们进行分组 其中一个过滤器必须采用数组中指定ID的元素 例如: var orgsID = [4002,4037]; //Show if it has one of the IDs from the array $('.event_item[data-id='+orgsID+']').addClass('show-item all'); 然后逐一检查LI是否有该ID。如果有,请出示该ID 这是过滤器: <ul id=

我有一个元素列表,每个元素都有一个数字ID,我正在创建一个过滤器对它们进行分组

其中一个过滤器必须采用数组中指定ID的元素

例如:

var orgsID = [4002,4037];

//Show if it has one of the IDs from the array
$('.event_item[data-id='+orgsID+']').addClass('show-item all'); 

然后逐一检查LI是否有该ID。如果有,请出示该ID

这是过滤器:

<ul id="e-filters"> 
    <li class="active" id="all">All</li>
    <li id="49504">SU Sports Events</li>
    <li id="4002" class="sportsID">Sports Clubs Events</li>  <!-- Get elements from array -->
</ul>
  • 全部
  • SU体育赛事 体育俱乐部活动
名单如下:

<div id="e-list">   
    <div class="event_item" data-id="4219"></div>
    <div class="event_item" data-id="4002"></div>
    <div class="event_item" data-id="5146"></div>
    <div class="event_item" data-id="4037"></div>
</div>

您可以这样做:

$('.event_item').filter(function() {
  return jQuery.inArray($(this).data("id"), orgsID) > -1;
}).addClass('show-item all');
演示

var orgsID=[40024037]; $('.event_item').filter(函数(){ 返回jQuery.inArray($(this.data(“id”),orgsID)>-1; }).addClass('show-item all')
。显示项目{颜色:蓝色;}

4219
4002
5146
4037

在数组上运行一个循环,检查这样的元素是否存在。如果存在,请添加类

orgsID.forEach(id => {
    if($('.event_item[data-id='+id+']').length){
        $('.event_item[data-id='+orgsID+']').addClass('show-item all');
    }
})

orgsID[number],使其处于循环中