复选框验证器

时间:2010-10-18 01:43:48

标签: javascript checkbox

我有一个复选框列表,我想确保用户在提交表单之前至少检查一个。我怎么能这样做?

每个类别下有3个类别,然后是10个项目,并带有一个复选框。

我正在考虑在javascript中执行此操作,其中我将有一个隐藏变量,然后当用户将检查任何复选框时,隐藏变量将具有1作为其值然后如果用户将取消选中该框,则隐藏变量的值为0。

1 个答案:

答案 0 :(得分:4)

你是如何标记它们的?

我希望这样......

<input type="checkbox" name="something[]" value="55" />

然后在 PHP ...

if ( ! isset($_POST['something']) OR empty($_POST['something'])) {
   echo 'Select a checkbox, please!';
}

您还可以使用 JavaScript ...

进行查看
var inputs = document.getElementById('my-form').getElementsByTagName('input');
var checked = 0;
for (var i = 0, length = inputs.length; i < length; i++) {
    if (inputs[i].getAttribute('type') !== 'checkbox') {
       continue;
    }

    if (inputs[i].checked) {
        checked++;
    }
}

if (checked === 0) {
   alert('Select a checkbox, please!');
}

See it working on JSbin