在ASP.NET登入頁面中如何?文字框焦點自動跳轉及通過斷行符號鍵提交表單
來源:互聯網
上載者:User
該文章講的是在ASP.NET登入頁面中如何?文字框焦點自動跳轉及通過斷行符號鍵提交表單。
所需的Javascript代碼:
<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();