Jquery如何仅检查自己的子元素

Jquery如何仅检查自己的子元素,jquery,checkbox,each,Jquery,Checkbox,Each,我想在这里实现jquery每个函数。菜单包含子菜单,如果在检查其父菜单时未选中子菜单,则必须停止该子菜单才能提交。但是在这里体育和车辆< /COD>菜单相互考虑子菜单< /代码>作为共同的代码>子菜单< /代码>,如果另一个“代码>子菜单< /代码>检查了我尝试了每个< /代码>函数,它不能停止,所以jQuery条件只适用于自己的子元素,但是它不起作用。 $(文档).on('submit','#form',函数(e){ e、 预防默认值(); 如果($(“[name='menu[]']:选中”

我想在这里实现jquery
每个函数。菜单包含子菜单,如果在检查其父菜单时未选中子菜单,则必须停止该子菜单才能提交。但是在这里<代码>体育和车辆< /COD>菜单相互考虑<代码>子菜单< /代码>作为共同的代码>子菜单< /代码>,如果另一个“代码>子菜单< /代码>检查了我尝试了<代码>每个< /代码>函数,它不能停止,所以jQuery条件只适用于自己的子元素,但是它不起作用。

$(文档).on('submit','#form',函数(e){
e、 预防默认值();
如果($(“[name='menu[]']:选中”).length==0){
警报(“缺少菜单”);
返回false;
}
如果($(“[name='menu[]']:选中”).val()==2&&$(“[name^='submenu']:选中”).length==0{
警报(“缺少子菜单”);
返回false;
}
如果($(“[name='menu[]']:选中”).val()==12&&$(“[name^='submenu']:选中”).length==0{
警报(“缺少子菜单”);
返回false;
}否则{
警惕(“成功”);
}
});
$(文档)。在('单击','菜单',函数()上){
如果($(this).is(':checked')){
$(this.parent().find('ul').slideDown('slow');
}否则{
//这两件事
$(this).parent().find('input[type=“checkbox”]”).prop('checked',false);
$(this.parent().find('ul').hide('slow');
}
});
ulli{
列表样式:无;
浮动:左;
}
ulli ulli{
浮动:无;
}
.col100{
宽度:100%;
}
ul li ul{
显示:无;
}

  • 车辆
    • 自行车
    • 汽车
    • 循环
  • 运动
    • 篮球
    • 排球
    • 足球

最好实现选中复选框并使主复选框为只读的复选条件

$(函数(){
//将主复选框设置为只读。
$('[name=“menu[]”)。单击(false);
$('[name=“menu[]”]+ul input')。单击(函数(){
$(this.nexist(“ul”).prev(“input”).prop(“checked”),($(this.nexist(“ul”).find(“input:checked”).length>0);
});
$(文件)。关于('submit','#form',函数(e){
e、 预防默认值();
如果($(“[name='menu[]']:选中”).length==0){
警报(“缺少菜单”);
返回false;
}否则{
警惕(“成功”);
}
});
});
ulli{
列表样式:无;
浮动:左;
}
ulli ulli{
浮动:无;
}
.col100{
宽度:100%;
}

  • 车辆
    • 自行车
    • 汽车
    • 循环
  • 运动
    • 篮球
    • 排球
    • 足球

谢谢@Praveen Kumar,您的回答似乎是个不错的选择,但问题是,在我的项目中,我默认设置了
子菜单的
可见性是
隐藏的
,因为还有许多其他
菜单可能有子菜单,也可能没有子菜单。因此,如果一个菜单有子菜单,那么这个
子菜单
只有在检查了它的
parent
菜单后才可见,因此如何修复它。请看我的更新片段,我最近更新过。所以我可以解决我的问题。再次感谢
请查看我更新的代码段,我最近进行了更新。
找不到更新伙伴…我真傻,我忘了保存已编辑的代码段,请查看kindly@AnandHmt啊,超级。。。我还在研究如何使这项工作顺利进行。对不起,伙计,谢谢你接受了答案。意义重大<代码>:)
祝您一切顺利。有一个愉快的周末。