项目有一个考试需求,要求在input标签中加上自动跳转到下一个input,本来是准备在input的value值发生变化的时候模拟键盘的tab键,找了几个模拟keydowm发现没用,干脆换个思路。
首先是标签:
<input type='text" oninput="focusNextInput(this)" />
方法:
我这里因为每个空只需要一个字,所以是有变化直接跳转,如果有多个字或者无限制的需求,在if中添加length判断就行了
function focusNextInput(thisinput) {
//检查是否为中文
var res = /^[\u4e00-\u9fa5]+$/;
if (!res.test(thisinput.value)) {
}
else {
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
if (i == (inputs.length - 1)) {
inputs[0].focus();
break
}
else if (thisinput == inputs[i]) {
inputs[i + 1].focus();
break
}
}
}
}