Javascript 如何将列表项与数组中的值匹配

Javascript 如何将列表项与数组中的值匹配,javascript,jquery,html,arrays,Javascript,Jquery,Html,Arrays,我有一个数组,它包含值[1,2]。 我还有一个html列表 <ul> <li id="1">List Item 1</li> <li id="2">List Item 2</li> <li id="3">List Item 3</li> </ul> 列出项目1 列出第2项 列出第3项 我需要遍历数组,如果数组中的值与列表中的ID匹配,则向列表项添加一个类 输出示例是 <ul> &l

我有一个数组,它包含值[1,2]。 我还有一个html列表

<ul>
<li id="1">List Item 1</li>
<li id="2">List Item 2</li>
<li id="3">List Item 3</li>
</ul>
  • 列出项目1
  • 列出第2项
  • 列出第3项
我需要遍历数组,如果数组中的值与列表中的ID匹配,则向列表项添加一个类

输出示例是

<ul>
<li id="1" class="active">List Item 1</li>
<li id="2" class="active">List Item 2</li>
<li id="3">List Item 3</li>
</ul>
    列表项目1 列表项目2
  • 列出第3项
我有点迷路了,提前谢谢你

尝试使用将数组转换为
“#1,#2”
,并将其作为选择器传递,然后向其添加类

var arr = [1,2];   // var arr = Express.completedSteps;

$($.map(arr,function(val,_){
  return "#" + val;
}).join()).addClass('active');
尝试使用将数组转换为
“#1,#2”
,并将其作为选择器传递,然后向其添加类

var arr = [1,2];   // var arr = Express.completedSteps;

$($.map(arr,function(val,_){
  return "#" + val;
}).join()).addClass('active');
试一试

试一试

试试下面的方法

 $(document).ready(function(){

 var obj = [1,2,5,7];  


        $.each( obj, function( key, value )
           {
               $('li').each(function(){

              if($(this).attr('id')==value)
              {
              $('#'+value).addClass( "active" );
              }
    });
});



})
在这里尝试演示。

尝试以下内容

 $(document).ready(function(){

 var obj = [1,2,5,7];  


        $.each( obj, function( key, value )
           {
               $('li').each(function(){

              if($(this).attr('id')==value)
              {
              $('#'+value).addClass( "active" );
              }
    });
});



})
在这里尝试演示。

谢谢!我很难让它工作,虽然它对我来说完全有意义。我将数组设置为
var arr=$(Express.completedSteps)包含值,例如“BillingDetails”、“ShippingDetails”
。处理字符串而不是整数时有什么区别吗?@TheEks what
$(Express.completedSteps)
将返回。控制台日志显示
[“AccountDetails”,“BillingAddress”]
@Mr_Green感谢您的更新。!希克斯:看一下格林先生的更新。@格林先生非常感谢你们两位!那是票。你能解释一下这种变化吗?是什么造成了这种变化?谢谢谢谢我很难让它工作,虽然它对我来说完全有意义。我将数组设置为
var arr=$(Express.completedSteps)包含值,例如“BillingDetails”、“ShippingDetails”
。处理字符串而不是整数时有什么区别吗?@TheEks what
$(Express.completedSteps)
将返回。控制台日志显示
[“AccountDetails”,“BillingAddress”]
@Mr_Green感谢您的更新。!希克斯:看一下格林先生的更新。@格林先生非常感谢你们两位!那是票。你能解释一下这种变化吗?是什么造成了这种变化?谢谢这将是真正有助于任何人寻找类,因为可能有多个页面上。真是太棒了!这将是真正有助于任何人寻找类,因为可能有多个页面上。真是太棒了!