当前输入框输入不正确,光标无论如何都不会跳转并alert警告,如果输入正确光标自动跳转到下一输入框!

请大家先耐心听我讲完这个问题,比较纠结:现在有一个这样的功能实现,页面有一组输入框,每完成一个输入后,光标会自动定位到下一输入框,这个功能我是用onkeyup事件来实现,就是判断输入长度是否满足,如果满足光标就向下一个跳转。但是在这个跳转前要先对这个输入框的内容作check,如果非法输入,将会弹出alert警告并保留原来光标位置。以上功能我都能用一个onkeyup事件来实现。除此之外还有一个功能实现,就是如果输入框输入非法触发完onkeyup事件光标保留当前输入框后,若此时用鼠标点击其他地方时还要弹出警告alert提示输入不正确,这个功能我是用onblur实现的,以上这两个功能我都能单独实现,可是放在一起这光标就不好控制了,求js达人帮忙啊。其实最后就是为了实现"当前输入框输入不正确,光标无论如何都不会跳转并alert警告(包括鼠标点击其他地方),如果输入正确光标自动跳转到下一输入框!"这功能,万分感谢!

holdtom
浏览 150回答 1
1回答

心有法竹

你可以用如下的思路用setInterval来代替onkeyup做异步检查onblur以后如果检查不合格,强行focus原来的input这是伪代码function check() {     // 执行检查代码 } setInterval(function () {    if (check()) {         // go to next input     } }, 100);input.onblur = function () {    if (!check()) {        input.focus();         alert('error');     } };
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript