1.第一种简单写法
function getKey(){ if(event.keyCode==13){ document.getElementById("password").focus(); } } function getKey2(){ if(event.keyCode==13){ document.getElementById("tel").focus(); } } function getKey3(){ if(event.keyCode==13){ document.getElementById("email").focus(); } } function getKey4(){ if(event.keyCode==13){ document.getElementById("username").focus(); } }
用户名:<input type="text" name="username" id="username" onkeypress="getKey();"></input> <br> 密码:<input type="text" name="password" id="password" onkeypress="getKey2();"></input> <br> 号码:<input type="text" name="tel" id="tel" onkeypress="getKey3();"></input> <br> 邮箱:<input type="text" name="email" id="email" onkeypress="getKey4();"></input>
2.第二种循环写法
function init(){ var aDivs = document.getElementsByTagName(‘input‘);//获取多个input集合 for(var i=0; i<aDivs.length; i++){ aDivs[i].index=i; aDivs[i].onkeypress=function(){ if(event.keyCode==13){ var c=parseInt(this.index)+parseInt(1); document.getElementById(aDivs[c].id).focus(); } } }}
解释:(aDivs[i].index=i;)通过给对象添加变量的方式解决了问题,就是每次把i保存下来作为对象的一个属性;
*************************************
另外的处理变量i的问题:
var aDivs = document.getElementsByTagName(‘div‘);//获取多个div集合 for(var i=0; i<aDivs.length; i++){ add(i); } function add(i){ aDivs[i].onclick=function(){ alert(i); } }
解释:利用闭包解决了闭包本身带来的问题;
以上内容所参考的页面:http://blog.csdn.net/playboyanta123/article/details/17241597
时间: 2024-10-09 20:50:31