动态复选框验证

时间:2011-02-17 10:27:39

标签: php javascript

我想在javascript中验证Checkbox,复选框是由PHP动态生成的,复选框的名称类似于“checkbox1”,“checkbox2”,“checkbox3”,即递增i ++,这些数字来自数据库,可能是第一次只提取了2行,下次提取了112行。

我如何在javascript中确保必须选择至少一个复选框。

2 个答案:

答案 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;
  }

}