我想在javascript中验证Checkbox,复选框是由PHP动态生成的,复选框的名称类似于“checkbox1”,“checkbox2”,“checkbox3”,即递增i ++,这些数字来自数据库,可能是第一次只提取了2行,下次提取了112行。
我如何在javascript中确保必须选择至少一个复选框。
答案 0 :(得分:2)
// When you use jQuery... somehow like this
$('form').submit(function() {
if ($("input:checked").length == 0) {
alert('Please check at least one checkbox!');
return false;
}
});
答案 1 :(得分:1)
如果您不想使用任何js框架,那么只需为复选框提供相同的name
属性
假设您的复选框名为test
var chkBoxes = document.getElementsByName("test");
var chked=0;
for(var i=0;i<chkBoxes.length;i++)
{
if(chkBoxes[i].checked)
chked++;
}
if(chked===0)
alert("Please select a value");
根据评论
中指定的示例代码添加function isChecked()
{
var i=1;
var chkd=0;
var elem = "";
var chkForMoreChkBoxes=true;
do{
elem=document.getElementById("check_"+i);
try{
if(elem.checked)
{
chkd++;
}
i++;
}
catch(err)
{
chkForMoreChkBoxes=false;
}
}while(chkForMoreChkBoxes)
if(chkd===0)
{
alert("Please select a value");
return false;
}
}