You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何选中form表单内所有input元素 实现无填写时触发alert提醒

Trivia表单空输入校验实现方案

核心逻辑

  • 绑定表单提交事件
  • 批量校验所有答题输入框的内容
  • 存在空值时阻止提交并弹出alert

可直接复用的代码

HTML表单结构示例

<form id="triviaForm">
  <!-- 每个问题的输入框都加上class="trivia-input" -->
  <div>
    <p>问题1:xxxxxx?</p>
    <input type="text" class="trivia-input" name="q1">
  </div>
  <div>
    <p>问题2:xxxxxx?</p>
    <input type="text" class="trivia-input" name="q2">
  </div>
  <!-- 可无限新增问题输入框,统一加trivia-input类即可 -->
  <button type="submit">提交答案</button>
</form>

JS逻辑代码

直接放到页面的<script>标签末尾即可生效:

const triviaForm = document.getElementById('triviaForm');

triviaForm.addEventListener('submit', function(e) {
  // 选取所有答题输入框
  const allInputs = document.querySelectorAll('.trivia-input');
  let isEmptyExist = false;

  // 遍历校验(自动去除输入框前后空格,避免用户只打空格提交)
  allInputs.forEach(input => {
    if (input.value.trim() === '') {
      isEmptyExist = true;
    }
  })

  if (isEmptyExist) {
    e.preventDefault(); // 阻止表单默认提交
    alert('请完成所有问题的作答后再提交~');
  }
})

自定义调整说明

  • 如果需要指定特定输入框校验,修改querySelectorAll的选择器即可
  • 可以修改alert内的文本为你需要的提示内容
  • 如果需要定位到具体未填写的问题,可在遍历到空值时记录对应问题内容,放到alert里提示

内容的提问来源于stack exchange,提问作者Yahav Dahan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 09:24:01