表单输入框如何实现必填且依次验证?
如何实现表单输入框必填且依次输入验证
问题:
在设计表单时,需要确保多个输入框内均有内容填写,且用户必须按照指定的顺序从第一个输入框开始填写。如何实现这一校验功能?
答案:
为每个输入框添加唯一的 name 属性,并添加事件监听器,在每个输入框获得焦点之前判断前一个输入框是否已填写。若前一个输入框为空,则阻止用户继续向当前输入框输入内容。
实现步骤:
- 为所有需要校验的输入框添加 name 属性,如:
<input type="text" name="name" /> <input type="email" name="email" /> <input type="password" name="password" />
- 为第一个输入框添加 focus 事件监听器,在用户获得焦点时检查是否填写了前一个输入框:
document.queryselector('[name="name"]').addeventlistener('focus', (e) => { const previousinput = document.queryselector('[name="previous-input"]'); if (previousinput && previousinput.value === '') { e.preventdefault(); alert('请先填写上一个输入框'); } });
- 重复步骤 2,但针对每个随后的输入框,将 previous-input 替换为上一个输入框的 name 属性,例如:
document.querySelector('[name="email"]').addEventListener('focus', (e) => { const previousInput = document.querySelector('[name="name"]'); if (previousInput && previousInput.value === '') { e.preventDefault(); alert('请先填写上一个输入框'); } });
以上就是表单输入框如何实现必填且依次验证?的详细内容,更多请关注其它相关文章!