我得到了两个JSTL循环,一个循环显示MainMenu,一个循环显示一个子菜单。现在,我尝试读取在类中检查的复选框值。由于循环中存在相同的类,因此我获得了所有复选框值。
我的HTML代码如下:
<div class="card-box table-responsive">
<c:forEach var="mBean" items="${sessionScope.mainMenuList}" varStatus="status">
<div class="form-group col-md-8" >
<span class="accordion"> <input type="checkbox" class="checkbox" name="sport" value="${mBean.menu_id}">${mBean.menu_name}</span>
<div class="panel sub-menu">
<c:forEach var="count" items="${sessionScope.subMenuList.get(status.index)}">
<div class="row">
<label id="childrens"><input type="checkbox" name="sport" value="${count.menu_id}">${count.menu_name}</label>
</div>
</c:forEach>
</div>
</div>
</c:forEach>
</div>
jQuery:
$(".checkbox").click(function() {
if ($(this).prop("checked")) {
$("#childrens input[type='checkbox']").each(function() {
$(this).attr("checked", "checked");
});
}else{
$("#childrens input[type='checkbox']").each(function() {
$(this).removeAttr("checked");
});
}
[![My menu looks like this][1]][1]});
答案 0 :(得分:0)
ForEach将创建ID为“ childrens”的多个复选框。由于ID应该是唯一的。使用类代替id。