如何设置&用户从第一个输入文本完成输入后,将焦点放在最后一个输入文本上

时间:2016-02-11 07:56:55

标签: javascript

我在表格中有多个输入文字。如何自动设置值&我从第一个输入文本框输入值后,将焦点放在最后一个输入文本上?

<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>
<td> <input type="text"/> </td>

我的js代码:

var d =  id('my_table', document); 
for (var x=1; x<d.rows.length; x++) {                    
    d.rows[x].cells[12].firstChild.innerText = x;                   
    d.rows[x].cells[12].firstChild.focus();     
}

2 个答案:

答案 0 :(得分:1)

您可以处理blur事件或keypress事件(处理用户按 Enter )或两者的组合:

&#13;
&#13;
var inputs = document.querySelectorAll('#table input');
inputs[0].addEventListener('blur', setFocus);
inputs[0].addEventListener('keypress', function(e) {
   if (e.keyCode === 13)
     setFocus();
});

function setFocus() {
  inputs[inputs.length - 1].value = '123';
  inputs[inputs.length - 1].focus();
}
&#13;
<table id="table">
   <tr><td><input type="text" ></td></tr>  
   <tr><td><input type="text" ></td></tr>  
   <tr><td><input type="text" ></td></tr>  
</table>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

我不确定,它和你想要的一样,但它会帮助你,试试这个

data.frame