我有这个由JavaScript函数生成的HTML代码,在这个简单的例子中我只有一个级别的ul和2 li元素
<ul id="criteria">
<li>Goal
<img id="add_criterion" class="add_criterion" src="../images/icons/add-icon.png">
<ul id="1" class="criteria">
<li id="1">criteria 1</li>
<li id="2">criteria 2</li>
</ul>
</li>
</ul>
和我的JavaScript函数删除对应于id和level(ul的id)的li
if($("ul[id="+level+"][class=criteria] li").length ==1){
$("ul[id="+level+"][class=criteria]").remove();
}else{
$("ul[id="+level+"][class=criteria] li#"+i).remove();
}
我的问题是,当我从第一个li开始时我无法删除它,但当我从第二个开始时,我将其删除并删除第一个没有问题
答案 0 :(得分:2)
作为快速解决方法,如果没有修复唯一身份证问题,您应该只需用$("ul[id="+level+"][class=criteria] li[id="+i+"]").remove();
替换else删除
显然,从长远来看,更好的解决方案是不使用重复的ID。