复选框值:可选还是必需?

时间:2014-06-18 09:40:15

标签: javascript html checkbox

根据MDNvalue属性是可选的,除非type属性的值为radiocheckbox。但它似乎不正确。以下是否有任何问题:

<input type="checkbox" id="input">
<script>
    document.getElementById('input').onchange = function () {
        alert('Checked!');
    };
</script>

DEMO

3 个答案:

答案 0 :(得分:0)

对于复选框,您可以检查'checked'属性是true还是false,因为复选框始终用作标记/布尔表达式。

document.getElementById('input').onchange = function () {
     alert('Checked!');
    alert(document.getElementById('input').checked);
  };

答案 1 :(得分:0)

我认为文档说当你在回发时需要选择的选项并且知道选择了什么值时必须拥有该值,我不知道为什么你认为你的代码不起作用的原因。在目前的情况下,如果您提交表单并且必须复选框,则您将无法知道正在选择的值。

  

复选框:复选框。 您必须使用value属性来定义此项目提交的值。使用checked属性指示是否选中此项。您还可以使用indeterminate属性来指示复选框处于不确定状态(在大多数平台上,这会在复选框上绘制一条水平线)。

答案 2 :(得分:0)

仅当您希望复选框在提交表单时通过值发布时,才需要value属性。如果您没有提交表单但只是想知道何时点击它,那么您的示例没有任何问题。

请注意,您的示例也会提醒&#34;已检查!&#34;当用户也取消选中该框时。这就是为什么您可能还想查看Javascript中checked属性的值。