我的HTML表单包含一系列五个相关的<input type="text" />
标记,所有这些标记都需要是一位数字或两位数字。我已经创建了一个JavaScript函数,它将使用if-else语句针对正则表达式测试用户输入。输入有效时,该功能可以正常工作;但是,如果输入无效,我希望将焦点保留在输入字段上,到目前为止,我还没有能够实现这一点。
我尝试使用document.getElementById(currseg).focus();
- 其中currseg
动态设置为违规输入字段的ID。我还尝试对每个可能的错误输入字段使用switch
语句和单个case
,并且使用直接指定的违规字段的ID而不是计算为变量。
每个输入字段的onblur
事件(我也尝试使用onchange
事件)都会提示验证测试。我在alert("Bad user input")
条件下有else
,因此我知道当输入无效时,函数正在正常流向else
条件,但焦点移动到下一个输入字段。
我尝试过的所有内容都无法停止焦点的进度,无论是通过鼠标操作还是通过制表键从输入字段移动。
如何建议我如何专注于输入无效的字段?
答案 0 :(得分:0)
//没有任何代码示例尝试在检查输入的函数中使用它 - 如果无效,则关注该元素,然后返回以使其停在那里...(假设函数的上下文是输入元素当然......)
this.focus();
return false;