【问题标题】:Validation of checkboxes with the same name验证具有相同名称的复选框
【发布时间】:2016-02-24 17:02:06
【问题描述】:

如果没有使用 JavaScript 选中以下复选框,我需要显示错误。

<tr>
  <td>Status</td>
  <td colspan="3">
    <input type="checkbox" name="chk_stat[]" value="single" id="chk_stat">single

    <input type="checkbox" name="chk_stat[]" value="married" id="chk_stat">Married

    <input type="checkbox" name="chk_stat[]" value="divorcee" id="chk_stat">Divorcee

    <input type="checkbox" name="chk_stat[]" value="student" id="chk_stat">Student
  </td>
</tr>

【问题讨论】:

  • var anychecked = $('input[name="chk_stat[]"]').is(':checked')
  • 无论如何这应该重新打开,因为其他问答没有使用vanilla JS...
  • @ArunPJohny 下一行应该是什么?
  • @DewDrop 抱歉,错过了没有 jQuery 标签
  • @ArunPJohny : 在 var anychecked = $('input[name="chk_stat[]"]').is(':checked') 之后如何检查以及我应该在哪里写错误消息class="comcopy">@ArunPJohny跨度>

标签: javascript html checkbox


【解决方案1】:

您可以使用document.querySelectorAll 选择具有某个给定名称的所有元素并使用伪类:checked 选择属性选择器来实现它:

var checkedCheckboxes = document.querySelectorAll("[name='chk_stat[]']:checked");

if (checkedCheckboxes.length == 0) {
  console.log("No checkbox is checked...");
}
<tr>
  <td>Status</td>
  <td colspan="3">
    <input type="checkbox" name="chk_stat[]" value="single" id="chk_stat">single

    <input type="checkbox" name="chk_stat[]" value="married" id="chk_stat">Married

    <input type="checkbox" name="chk_stat[]" value="divorcee" id="chk_stat">Divorcee

    <input type="checkbox" name="chk_stat[]" value="student" id="chk_stat">Student
  </td>
</tr>

【讨论】:

  • 非常感谢您的帮助
猜你喜欢
  • 2012-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-09
相关资源
最近更新 更多