您的位置:首页 > 其它

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

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

我将这些代码放在了一个LoginScript.js文件中,然后在Login.cs文件中添加如下代码就实现这样的功能:

[align=left]tbUserName.Attributes.Add("onKeyPress","checkEnter(event,this)");[/align]
[align=left]tbPassword.Attributes.Add("onKeyPress","checkEnter(event,this)");[/align]
[align=left]System.IO.StreamReader sr=new System.IO.StreamReader(MapPath("Script")+"//LoginScript.js");[/align]
[align=left]this.RegisterClientScriptBlock("LoginScript",sr.ReadToEnd());[/align]
sr.Close();

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

function keyDown(e) {

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

<body onload="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
.tabIndex==CurTabIndex) //找到下一个表单元素
// {
// Form1.elements
.focus(); //移动焦点
// return true;
// }
// }

// }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐