具有相同名称验证器的多个复选框

时间:2012-01-13 18:29:39

标签: php html validation checkbox

我有这个表单,其中包含多个具有相同名称的复选框,并且从数据库中读取所有复选框:

echo "<FORM action='check.php' method=POST>"; ?>
<div style='color:#414141; font-size:15px;'>
<?php
while($rows=mysql_fetch_array($result)){
?>
<input name="check[]" type="checkbox" id="checkk[]" value="<? echo $rows['ID']; ?>"><? echo $rows['checkboxname']; ?>
<BR>
<?php
}
echo "</div>";
echo "<input name='' type='submit' id='get' value='Next'>";
echo "</FORM>";

我需要对下一个文件进行表单验证。当我单击“提交”按钮(下一步)时,只有在选中了复选框时才显示下一页。我提供了一种javascript验证方法。

1 个答案:

答案 0 :(得分:2)

您可以为提交按钮添加单击事件侦听器,并检查是否选中了至少一个复选框,如果为true则提交。

下面的内容应该有效,

尝试以下,

echo "<input name='' type='submit' id='get' value='Next' onclick='return validateCheckbox()'>";


<script>
     function validateCheckbox () {
        var checkboxes = document.getElementsByName('check[]'); //selected by name since OP wanted to select by name

         for (var i = 0; i < checkboxes.length; i++) {
             if (checkboxes[i].checked) {
               return true; // found 1 checked checkbox
             }
         }

         return false; //none checked, so cancel submit
     }
</script>