以下jquery代码有什么问题?如果选择了包含menu
的{{1}},则必须至少检查一个value 1
。
它不起作用,如果选中子菜单,它仍然是警告信息并且正在停止。我正在尝试添加submenu
或在[name='submenu[]']
中存储值,但它不起作用。
variable
if ($("[name='menu[]']:checked").val() == 1) {
if ($("[name='submenu[][]']:checked").length == 0) {
alert('Select at least one submenu ');
return false;
}
}
答案 0 :(得分:1)
你可以这样做:https://codepen.io/creativedev/pen/aKwJGW
$(document).ready(function() {
$('input[type="checkbox"]').click(function () {
if ($("[name='menu[]']:checked").val() == 1) {
console.log($("[name^='submenu']:checked").length);
if ($("[name^='submenu']:checked").length == 0) {
alert('Select at least one submenu ');
//return false;
}
}
});
});
答案 1 :(得分:0)
通过查看您的代码我理解的是您要验证至少一个复选框必须被剔除
将相同的类提供给类似的复选框,如
<li><input type="checkbox" class="submenuCkeckbox" name="submenu[1][]" value="1">Local</li>
<li><input type="checkbox" class="submenuCkeckbox" name="submenu[1][]" value="2">National</li>
验证函数中的默认情况下会有一个标志,它将设置为false,如果至少有一个标记将被设置为
function validate(){
var alertFlag = false;
$(".submenuCkeckbox").each(function () {
if ($(this).is(':checked')) {
alertFlag = true;
}
});
if (!alertFlag ) {
alert('Select Atleast one checkbox');
}
}