【问题标题】:Multiple Checkboxes with same name validator具有相同名称验证器的多个复选框
【发布时间】:2012-02-09 22:35:53
【问题描述】:

我有这个带有多个同名复选框的表单,并且所有复选框都是从数据库中读取的:

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 验证方法。

【问题讨论】:

  • 检查 check.php 中 $_POST['check'] 数组的值
  • 请分享check.php的相关部分

标签: php html validation checkbox


【解决方案1】:

您可以为提交按钮添加一个点击事件监听器,并检查是否至少有一个复选框被选中,如果为真则提交。

类似下面的东西应该可以工作,

试试下面,

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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多