我有一个复选框列表,我想确保用户在提交表单之前至少检查一个。我怎么能这样做?
每个类别下有3个类别,然后是10个项目,并带有一个复选框。
我正在考虑在javascript中执行此操作,其中我将有一个隐藏变量,然后当用户将检查任何复选框时,隐藏变量将具有1作为其值然后如果用户将取消选中该框,则隐藏变量的值为0。
答案 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!');
}