获得的id在某些情况下不起作用

时间:2016-09-19 19:02:05

标签: javascript jquery

我使用此脚本查找类中元素的ID,然后将其删除

var ids = [];
var eic = document.getElementsByClassName('classname');
for(var i = 0, length = eic.length; i < length; i++) {
    ids.push(eic[i].id);
    $('#'+eic[i].id).remove(); 
} 

问题在于,当我尝试删除它们时,它只删除了一些元素,并且控制台返回错误:

  

&#34; TypeError:eic [i]未定义&#34;

当我不想删除它们时,不会返回任何错误,当我提醒获得的ID时,每一个都有。

1 个答案:

答案 0 :(得分:0)

试试这个正在运作的

&#13;
&#13;
$(document).ready(function(){

var ids = [];
    $("button").click(function(){
        $(".example").each(function(){
            ids.push(this.id);
            $(this).remove();
        });
        $("#resultArray").text(ids);
      });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>Populate array</button>

<div class="example" id="div1">First div element with class="example".</div>

<div class="example" id="div2">Second div element with class="example".</div>

<div class="example" id="div3">Third div element with class="example".</div>

<br>
Array of Ids : <div id="resultArray"><div>
&#13;
&#13;
&#13;