Jquery如何仅检查自己的子元素
我想在这里实现jqueryJquery如何仅检查自己的子元素,jquery,checkbox,each,Jquery,Checkbox,Each,我想在这里实现jquery每个函数。菜单包含子菜单,如果在检查其父菜单时未选中子菜单,则必须停止该子菜单才能提交。但是在这里体育和车辆< /COD>菜单相互考虑子菜单< /代码>作为共同的代码>子菜单< /代码>,如果另一个“代码>子菜单< /代码>检查了我尝试了每个< /代码>函数,它不能停止,所以jQuery条件只适用于自己的子元素,但是它不起作用。 $(文档).on('submit','#form',函数(e){ e、 预防默认值(); 如果($(“[name='menu[]']:选中”
每个函数。菜单包含子菜单,如果在检查其父菜单时未选中子菜单,则必须停止该子菜单才能提交。但是在这里<代码>体育和车辆< /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啊,超级。。。我还在研究如何使这项工作顺利进行。对不起,伙计,谢谢你接受了答案。意义重大<代码>:)
祝您一切顺利。有一个愉快的周末。