<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;
// }
// }
// }
}