如何实现文本框焦点自动跳转及通过回车键提交表单

<script language="JavaScript">
NS4 = (document.layers) ? true : false;
function checkEnter(event,element)
{    
    var code = 0;
    if (NS4)
        code = event.which;
    else
        code = event.keyCode;
    if (code==13)
     {
        if(element.name=='tbUserName')//tbUserName- 用户名文本框的Name
         {
              document.frmLogin.tbPassword.focus();//frmLogin- 表单名称,tbPassword-密码文本杠框的Name
         }
         if(element.name=='tbPassword')
         {
              //document.frmLogin.submit(); 用这种方式提交,Asp.net页面会闪一下,但实际并未提交
              // 用下面的代码才能提交,我是从asp.net生成的页面中查看源文件然后复制出来的
              if (typeof(Page_ClientValidate) != 'function' || Page_ClientValidate()) __doPostBack('lblLogin','');
         }
     }
}
 
</script>

我将这些代码放在了一个LoginScript.js文件中,然后在Login.cs文件中添加如下代码就实现这样的功能:
tbUserName.Attributes.Add("onKeyPress","checkEnter(event,this)");
tbPassword.Attributes.Add("onKeyPress","checkEnter(event,this)");
System.IO.StreamReader sr=new System.IO.StreamReader(MapPath("Script")+"//LoginScript.js");
this .RegisterClientScriptBlock("LoginScript",sr.ReadToEnd());
sr.Close();


<script language="javascript"> 
<!-- 
function init()
{
document.οnkeydοwn=keyDown 
}

function keyDown(e) { 

if(event.keyCode==13)
{
event.keyCode=9
}


<body  οnlοad="init()"> 

<SCRIPT language="javascript">
function keyvalue()
{
if(event.keyCode=="13")
{

if(!(event.srcElement.name=="btnSave"|| event.srcElement.name=="btnReturn") )
{
event.keyCode="9";
}
}
// key=window.event.keyCode;
// alert(key);
// if(key==13)//判断是否按下回车键
// {
// event.keyCode=9;
//CurTabIndex=event.srcElement.tabIndex+1//将当前tabindex的值加1
//for (n=0;n< Form1.elements.length;n++)
//{
// if (Form1.elements[n].tabIndex==CurTabIndex) //找到下一个表单元素
// {
// Form1.elements[n].focus(); //移动焦点
// return true;
// }
// }

// }



 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值