Javascript 当某些输入位于父元素内时,访问下一个sibling

Javascript 当某些输入位于父元素内时,访问下一个sibling,javascript,focus,nextsibling,Javascript,Focus,Nextsibling,我有一个html表,其中一些在一些中。当当前输入的值与“不同时,我希望将焦点放在下一个输入上。但是,这不起作用,因为输入元素不直接跟随彼此 let cells=document.querySelectorAll('td>input'); for(设x个单元格){ x、 maxLength=1; x、 类型='text'; x、 onkeyup=函数(){ 如果(this.value!=''{this.nextSibling.focus()}//HERE } } 您只需获取当前单元格的索引,并使

我有一个html表,其中一些
在一些
中。当当前输入的值与
不同时,我希望将焦点放在下一个输入上。但是,这不起作用,因为输入元素不直接跟随彼此

let cells=document.querySelectorAll('td>input');
for(设x个单元格){
x、 maxLength=1;
x、 类型='text';
x、 onkeyup=函数(){
如果(this.value!=''{this.nextSibling.focus()}//HERE
}
}

您只需获取当前单元格的
索引
,并使用该索引而不是
下一个索引

let cells=document.querySelectorAll('td>input');
for(设x个单元格){
const index=[…单元格].indexOf(x);//获取当前单元格的索引
x、 maxLength=1;
x、 类型='text';
x、 onkeyup=函数(){
if(this.value!=''&&cells[index+1]){//检查下一个单元格是否存在
单元格[index+1].focus();//聚焦下一个单元格
}
}
}