当前位置导航:炫浪网>>网络学院>>网页制作>>ASP.NET教程

JS实现文本框回车提交

  我在网上找了不少相关的资料,没有一个能直接拿来给我用的,经过一番琢磨还是弄明白了。我登陆界面有三个文本框:用户名(asp:TextBox id=txtUserName)、密码(asp:TextBox id=txtUserPassword)、验证码(asp:TextBox id=txtSN),两个按钮:登陆(asp:Button id=btnLogin)、重置(asp:Button id=btnReset)。我想实现的是:输入用户名后按Enter,光标移动到密码框,输入密码后按Enter,光标移动到验证码框,输入验证码后按Enter,提交表单。<!--我用的不是Input HTML的元素-->

  下面说一下我的解决方案:

  1.实现按Enter等同Tab的功能

  <script language="javascript" for="document" event="onkeydown">

  if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='textarea' && event.srcElement.type!='')

  event.keyCode=9;   //Tab的键值为9 Enter的键值为13

  </script>

  2.最后一个文本框(验证码 txtSN)输入后 按Enter提交表单

  <script language ="javascript">

  function getEnter(){

  if(event.keyCode == 13 && event.srcElement.type!='submit'){

  event.returnValue=false;

  //document.all("btnLogin").click(); 这个也行 测试过

  document.getElementById('btnLogin').click();

  }

  }

  </script>

  在Page_Load里加上 this.txtSN.Attributes.Add("onKeyDown", "getEnter()");就OK!

  以上两段JS代码网上遍地都是,但是任何一个都不能实现我的要求,组合起来就好使了,继续学习了...

相关内容
赞助商链接