jquert 为什么获取父级的父级元素一直报错 ?

clipboard.png

clipboard.png
jquert 获取删除选中的checkbox的父级元素的父级元素,为何一直报错,图中checkbox已经测试了获取成功,为什么一取父级元素就报错,求前辈指点!谢谢!

clipboard.png

阅读 2.5k
3 个回答

使用[i]获取到的是dom对象,dom对象是没有parent方法的,你需要使用eq(i),这样获取到的还是jquery对象:

$(".checkboxdele").eq(i).parent().parent().remove();

Update:
隔行删除,一次删除不完的问题:

$(".dele").click(function () {
    let arr = $(".checkboxdele")
    for (let i = arr.length - 1; i >= 0; i--) { // 倒着删除
        if (arr[i].checked) {
            arr.eq(i).parent().parent().remove();
        }
    }
})

$(".checkboxdele")[i]是dom对象不是jquery对象,没有parent方法

你把$(".checkboxdele")[i]打印出来看看它的节点有哪些,然后接着打印它的parent(),很快你就能定位到问题了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题