使用jQuery克隆元素时如何仅保留指定类下的第一个元素
你已经拿到克隆节点clone并选中所有.remove类元素后,可通过以下两种方案实现需求:
方案1:通过下标过滤(不依赖ID,适用范围更广)
// 选中克隆节点内所有带remove类的元素 const removeEls = clone.find('.remove'); // 跳过第一个元素,删除下标从1开始的所有剩余元素 removeEls.slice(1).remove();
只要DOM结构顺序稳定,第一个匹配到的.remove就是你要保留的remove_item元素,无需额外判断ID。
方案2:通过ID精准过滤
如果担心元素顺序可能发生变化,可主动匹配ID排除需要保留的元素:
const removeEls = clone.find('.remove'); // 过滤掉id为remove_item的元素后,删除剩余所有元素 removeEls.not('#remove_item').remove();
两种方案执行完成后,克隆节点内就只会保留你需要的第一个带remove类的元素,其余同类元素都会被清除。
内容的提问来源于stack exchange,提问作者user16511868
相关产品推荐
相关产品推荐

