สิ่งที่น่ารำคาญที่สุดอย่างหนึ่งในการพัฒนาเว็บคือการจัดการกับ "ปุ่ม Enter" สำหรับแบบฟอร์ม "ปุ่ม Enter" กลายเป็นความต้องการของผู้ใช้เมื่อส่งแบบฟอร์ม แม้ว่าเราจะให้ปุ่มส่งแก่ผู้ใช้ แต่วิธีที่ง่ายที่สุดและตรงที่สุดยังคงอยู่: ป้อนข้อความแล้วกด Enter เพื่อดำเนินการส่งให้เสร็จสิ้น
ASP.NET 2.0 มอบโซลูชันที่ดีสำหรับสิ่งนี้ เพียงกำหนดแอตทริบิวต์ "defaultbutton" ให้กับ ID ของตัวควบคุมปุ่มที่คุณต้องการเพิ่มเหตุการณ์
"defaultbutton" สามารถระบุได้ทั้งในระดับแบบฟอร์มและระดับแผง (แท็ก <asp:panel>) เมื่อมีการระบุปุ่มเริ่มต้นทั้งในแบบฟอร์มและแผง หากมีการทริกเกอร์ "ปุ่ม Enter" ในแผง
โค้ดตัวอย่างต่อไปนี้ในแผงการดำเนินการจะมีแบบฟอร์มและแผง 4 แผง และมีปุ่มในลำดับและแผง . ข้อควรสนใจ: เหตุการณ์ปุ่มใดที่จะถูกทริกเกอร์หลังจากกด Enter ในกล่องข้อความ
<form id="form1" runat="server" defaultbutton="btn1">
<div>
<asp:TextBox ID="txt" runat="server"></asp:TextBox>
<asp:Button ID="Button5" runat="server" Text="Cancel" OnClick="Button5_Click" />
<asp:Button ID="btn1" runat="server" Text="ส่ง" OnClick="btn1_Click" />
<asp:รหัสแผง = "pnl1" runat = "เซิร์ฟเวอร์" defaultbutton = "ปุ่ม 1">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID = "Button1" runat = "เซิร์ฟเวอร์" Text = "Button1" OnClick = "Button1_Click" />
</asp:แผง>
<asp:รหัสแผง = "Panel1" runat = "เซิร์ฟเวอร์" defaultbutton = "ปุ่ม 2">
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:ID ของปุ่ม = "Button2" runat = "เซิร์ฟเวอร์" Text = "Button2" OnClick = "Button2_Click" / >
</asp:แผง>
<asp:รหัสแผง = "Panel2" runat = "เซิร์ฟเวอร์" defaultbutton = "ปุ่ม 3">
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
<asp:Button ID = "Button3" runat = "เซิร์ฟเวอร์" Text = "Button3" OnClick = "Button3_Click" />
</asp:แผง>
<asp:รหัสแผง = "Panel3" runat = "เซิร์ฟเวอร์" defaultbutton = "ปุ่ม 4">
<asp:TextBox ID="TextBox7" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox8" runat="server"></asp:TextBox>
<asp:Button ID = "Button4" runat = "เซิร์ฟเวอร์" Text = "Button4" OnClick = "Button4_Click" / >
</asp:แผง>
</div>
</form>
เหตุการณ์ตัวอย่างที่สอดคล้องกันสำหรับการคลิกปุ่มคือ
โมฆะที่ได้รับการป้องกัน Button1_Click (ผู้ส่งวัตถุ EventArgs e)
-
Response.Write (Button1.Text);
-
โมฆะที่ได้รับการป้องกัน Button2_Click (ผู้ส่งวัตถุ EventArgs e)
-
Response.Write (Button2.Text);
-
โมฆะที่ได้รับการป้องกัน Button3_Click (ผู้ส่งวัตถุ EventArgs e)
-
Response.Write (Button3.Text);
-
ป้องกันเป็นโมฆะ Button4_Click (ผู้ส่งวัตถุ EventArgs e)
-
Response.Write (Button4.Text);
-
ป้องกันเป็นโมฆะ btn1_Click (ผู้ส่งวัตถุ EventArgs e)
-
การตอบกลับเขียน(btn1.Text);
-
โมฆะที่ได้รับการป้องกัน Button5_Click (ผู้ส่งวัตถุ EventArgs e)
-
Response.Write (ปุ่ม 5 ข้อความ);
-
ข้อความต้นฉบับ: http://forums.asp.net/thread/1270048.aspx
ข้อความต้นฉบับ: http://forums.asp.net/thread/1270048.aspx
ฉันไม่รู้วิธีแปล "รหัสรายการ"
เมื่อดาวน์โหลดโค้ด
โปรดให้คำแนะนำแก่ฉันบ้าง
ขอบคุณ