验证 HTML 表单输入 - 如果选项卡无效,则阻止选项卡

validate HTML form input - prevent tab if invalid

本文关键字:选项 无效 HTML 输入 如果 验证 表单      更新时间:2023-09-26

我的HTML表单包括一系列五个相关的<input type="text" />标签,所有这些标签都需要是个位数或两位数的数字。我创建了一个 JavaScript 函数,它将使用 if-else 语句针对正则表达式测试用户输入。当输入有效时,该函数按预期工作;但是,如果输入无效,我希望将重点留在输入字段上,到目前为止,我还没有能够做到这一点。

我尝试使用document.getElementById(currseg).focus(); - 其中currseg动态设置为有问题的输入字段的 ID。我还尝试使用switch语句,为每个可能的错误输入字段提供单独的case,并直接指定违规字段的 ID,而不是作为变量计算。

验证测试由每个输入字段的onblur事件(我也尝试使用 onchange 事件(提示。我在else条件下有一个alert("Bad user input"),所以我知道当输入无效时,函数正在正常流向else条件,但焦点移动到下一个输入字段。

尝试的所有方法都无法阻止焦点的进度,无论我是通过鼠标操作还是按 Tab 键从输入字段移动。

有什么建议,我怎样才能专注于输入无效的字段?

//没有任何代码示例,请尝试在检查输入的函数中使用它 - 如果无效,请聚焦该元素,然后返回以使其停在那里......(当然,假设函数的上下文是输入元素... (

this.focus(); 
return false;