[asp.net 2.0] 폼에서 엔터를 치는 경우[asp.net 2.0] 폼에서 엔터를 치는 경우
Posted at 2009/04/23 16:29 | Posted in Dev/ASP.NETAsp.net 1.X시절
페이지내 버튼컨트롤이 여러개 위치했을때 텍스트박스에서 글을 입력 후 엔터를 칠 경우
원하지 않는 버튼이 클릭되는 골치아픈 현상이 있었습니다.
아래와 같이 자바스크립트를 속성에 추가하는 방법으로 처리했었죠.
텍스트박스.Attributes.Add("onkeypress", "if (event.keyCode == 13) {" +Page.GetPostBackEventReference(버튼컨트롤ID) + "; return false;}");
하지만 이 코드는 IE에서만 제대로 동작하더군요. ( FireFox에서 동작되지 않습니다.)
여러가지 해결책이 있겠지만
Asp.net 2.0에서 아주 간단하게 해결할 수 있는 방법을 소개해 드릴께요.
(다 알고 계시겠지만 혹시나 모르시는 분들을 위해 ^^;)
Panel로 영역을 설정하고 DefaultButton을 지정해 주면됩니다.
아래 코드를 보시면 쉽게 이해가 가실 것 같네요.
<asp:Panel ID="Panel1" runat="server" DefaultButton="Btn1" >
<asp:textbox id="TextBox1" runat="server" />
<asp:ImageButton id="Btn1" runat="server" ImageUrl="images/btn1.gif" />
<asp:ImageButton id="Btn2" runat="server" ImageUrl="images/btn2.gif" />
</asp:Panel>
Panel1내에 위치한 TextBox1에서 엔터키를 누를경우 항상 Btn1 이 클릭 처리됩니다.
'Dev > ASP.NET' 카테고리의 다른 글
| [[ASP.NET]] Session in ASP.Net - 강좌2 (0) | 2009/04/24 |
|---|---|
| [[ASP.NET]] Session in ASP.Net - 강좌1 (1) | 2009/04/24 |
| [asp.net 2.0] 폼에서 엔터를 치는 경우 (0) | 2009/04/23 |
| DataSet 클래스를 이용한 XML 문서 다루기 (0) | 2009/03/23 |
| ASP.NET과 XML Part 3 - DataSet과 XML (0) | 2009/03/23 |
| ASP.NET과 XML Part 2 - XmlDocument 클래스 (0) | 2009/03/23 |

