淺析C# TextBox事件實(shí)現(xiàn)體會(huì)
C# TextBox事件使用實(shí)例向你介紹了一個(gè)避免Button按鈕起作用反而對(duì)Enter回車鍵有響應(yīng)的實(shí)現(xiàn),其目的就是做到Enter鍵來實(shí)現(xiàn)Tab效果的問題,那么我們來看看具體的實(shí)現(xiàn)效果、實(shí)現(xiàn)方法以及實(shí)現(xiàn)的實(shí)例。
C# TextBox事件的效果預(yù)期一般情況下:
◆當(dāng)一個(gè)頁面有TextBox以及Button的時(shí)候
◆當(dāng)光標(biāo)停留在TextBox上 此時(shí)按Enter鍵 回車
◆就會(huì)發(fā)現(xiàn)光標(biāo)將焦點(diǎn)停留在Button上并且觸發(fā)了Button的按鈕事件
這里C# TextBox事件實(shí)現(xiàn)如下效果
一個(gè)包含[姓名TextBox1]和[備注TextBox2]以及[確定Button按鈕]的頁面
1.屏蔽按鈕對(duì)回車鍵的響應(yīng) 而只響應(yīng)鼠標(biāo)的點(diǎn)擊
2.以及實(shí)現(xiàn)Enter鍵達(dá)到Tab鍵的轉(zhuǎn)換
◆即TextBox1非空時(shí) 按回車鍵 光標(biāo)轉(zhuǎn)到TextBox2
◆當(dāng)TextBox2非空時(shí) 按回車鍵 光標(biāo)轉(zhuǎn)到Button
◆當(dāng)光標(biāo)停留在Button上時(shí) 按回車鍵 光標(biāo)轉(zhuǎn)到TextBox1
C# TextBox事件代碼示例如下:
- ﹤%@ Page Language="C#" AutoEventWireup="true"
- CodeFile="Default2.aspx.cs" Inherits="Default2" %﹥
- ﹤html﹥
- ﹤head id="Head1" runat="server"﹥
- ﹤title﹥屏蔽Button按鈕對(duì)Enter鍵的響應(yīng)﹤/title﹥
- ﹤script language="javascript" type="text/javascript"﹥
- //TextBox1的 onkeydown事件
- //若TextBox1非空 則光標(biāo)停留在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非空 則光標(biāo)停留在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事件
- //如果是回車鍵
- //則光標(biāo)停留在TextBox1
- //不觸發(fā)按鈕事件
- 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事件實(shí)現(xiàn)后臺(tái)代碼:
- 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事件的相關(guān)內(nèi)容和實(shí)現(xiàn)實(shí)例就向你介紹到這里,希望那個(gè)對(duì)你了解和學(xué)習(xí)C# TextBox事件有所幫助。
【編輯推薦】