小编典典

对一组复选框使用HTML5“必需”属性吗?

html

使用支持HTML5的较新浏览器时(例如FireFox 4);
表单字段具有属性required='required';
表单字段为空/空白;
然后单击提交按钮;
浏览器检测到“必填”字段为空,不提交表单;
而是浏览器显示提示,要求用户在字段中键入文本。

现在,我没有一 文本 ,而是一 组复选框 ,其中至少有一个应该由用户选中/选择。

如何required在这组复选框上使用HTML5 属性?(由于仅需要选中一个复选框,因此无法将required属性放在每个复选框上)

ps。我正在使用simple_form,如果那很重要。


更新

可以在HTML 5 multiple的属性是有帮助吗?之前有人使用它来做类似我的问题的事情吗?

更新

似乎 是这个功能不是HTML5规范的支持: ISSUE-111:什么输入@为@type
=复选框需要的意思。?

(问题状态: 问题已标记为已关闭而没有任何偏见。)。

更新2

这是一个古老的问题,但想澄清一下,该问题的初衷是能够在不使用Javascript的情况下完成上述操作,即使用HTML5的方式。回想起来,我应该使“不带Javascript”更为明显。


阅读 433

收藏
2020-05-10

共1个答案

小编典典

不幸的是,HTML5没有提供开箱即用的方式来做到这一点。

但是,使用jQuery,您可以轻松控制复选框组是否至少具有一个选中的元素。

考虑以下DOM代码段:

<div class="checkbox-group required">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
</div>

您可以使用以下表达式:

$('div.checkbox-group.required :checkbox:checked').length > 0

true如果至少检查了一个元素,则返回。基于此,您可以实施验证检查。

2020-05-10