淺析C# TextBox事件實現體會
C# TextBox事件使用實例向你介紹了一個避免Button按鈕起作用反而對Enter回車鍵有響應的實現,其目的就是做到Enter鍵來實現Tab效果的問題,那么我們來看看具體的實現效果、實現方法以及實現的實例。
C# TextBox事件的效果預期一般情況下:
◆當一個頁面有TextBox以及Button的時候
◆當光標停留在TextBox上 此時按Enter鍵 回車
◆就會發現光標將焦點停留在Button上并且觸發了Button的按鈕事件
這里C# TextBox事件實現如下效果
一個包含[姓名TextBox1]和[備注TextBox2]以及[確定Button按鈕]的頁面
1.屏蔽按鈕對回車鍵的響應 而只響應鼠標的點擊
2.以及實現Enter鍵達到Tab鍵的轉換
◆即TextBox1非空時 按回車鍵 光標轉到TextBox2
◆當TextBox2非空時 按回車鍵 光標轉到Button
◆當光標停留在Button上時 按回車鍵 光標轉到TextBox1
C# TextBox事件代碼示例如下:
- ﹤%@ Page Language="C#" AutoEventWireup="true"
- CodeFile="Default2.aspx.cs" Inherits="Default2" %﹥
- ﹤html﹥
- ﹤head id="Head1" runat="server"﹥
- ﹤title﹥屏蔽Button按鈕對Enter鍵的響應﹤/title﹥
- ﹤script language="javascript" type="text/javascript"﹥
- //TextBox1的 onkeydown事件
- //若TextBox1非空 則光標停留在TextBox2
- function TextBox1onKeyDown()
- {
- if(event.keyCode==13)
- {
- if(document.all.TextBox1.value=="")
- {
- document.all.TextBox1.focus();
- event.keyCode = 0;
- event.returnValue = false;
- }
- else
- {
- //event.keyCode=9;//Enter鍵-﹥Tab鍵
- document.all.TextBox2.focus();
- event.keyCode = 0;
- event.returnValue = false;
- }
- }
- }
- //TextBox2的 onkeydown事件
- //若TextBox2非空 則光標停留在Button1
- function TextBox2onKeyDown()
- {
- if(event.keyCode==13)
- {
- if(document.all.TextBox2.value=="")
- {
- document.all.TextBox2.focus();
- event.keyCode = 0;
- event.returnValue = false;
- }
- else
- {
- //event.keyCode=9;//Enter鍵-﹥Tab鍵
- document.all.Button1.focus();
- event.keyCode = 0;
- event.returnValue = false;
- }
- }
- }
- //Button1的 onkeydown事件
- //如果是回車鍵
- //則光標停留在TextBox1
- //不觸發按鈕事件
- function Button1onKeyDown()
- {
- if(event.keyCode==13)
- {
- document.all.TextBox1.focus();
- event.keyCode = 0;
- event.returnValue = false;
- }
- }
- //Button1的 onClick事件
- function btnOnClick()
- {
- alert(event.keyCode);
- alert('onclick');
- }
- ﹤/script﹥
- ﹤/head﹥
- ﹤body﹥
- ﹤form id="form1" runat="server"﹥
- ﹤asp:TextBox ID="TextBox1" runat="server"﹥﹤/asp:TextBox﹥
- ﹤asp:TextBox ID="TextBox2" runat="server"﹥﹤/asp:TextBox﹥
- ﹤asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"/﹥
- ﹤/form﹥
- ﹤/body﹥
- ﹤/html﹥
- C# TextBox事件實現后臺代碼:
- public partial class Default2 : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- if (!IsPostBack)
- {
- this.TextBox1.Attributes.Add("onkeydown", "TextBox1onKeyDown();");
- this.TextBox2.Attributes.Add("onkeydown", "TextBox2onKeyDown();");
- this.Button1.Attributes.Add("onkeydown", "Button1onKeyDown();");
- this.Button1.Attributes.Add("onclick", "btnOnClick();");
- this.TextBox1.Focus();
- }
- }
- protected void Button1_Click(object sender, EventArgs e)
- {
- Response.Write("onclickServer");
- }
- }
C# TextBox事件的相關內容和實現實例就向你介紹到這里,希望那個對你了解和學習C# TextBox事件有所幫助。
【編輯推薦】