Sem Göksu
Sem Göksu
Yazılım · Yolculuk · Fenerbahçe
Yazılım

ASP.NET Enter Tuşu Problemi

22 Ağustos 2008 1 dk okuma 4241 6
ASP.NET ile uygulama gelistirirken sayfamız içerisinde birden fazla button varsa enter tusuna basınca alakası olmayan bir button`un eventi çalısır yada varsa sayfamızdaki validatorlar çalısır. Bunu çözmek için Javascript kullanabiliriz,

txtBox1.Attributes.Add("onkeydown", "if(event.which || event.keyCode){if ((event.which == 13) || (event.keyCode == 13)) {document.getElementById(`" + Button1.UniqueID + "`).click();return false;}} else {return true}; ");

Yukarıdaki javascript kısmen de olsa isimiz görse de bazı browserlar da sorun çıkarır. (Örnegin Firefox). Tabi bununda çözümü var. ASP.NET 2.0 ile birlikte formlarımıza ve panellerimize default button atayabiliyoruz. Panel içerisinde enter`a basıldıgında hangi buttonun click eventinin tetiklenecegini DefaultButton propertysinden belirleyebiliyoruz. Örnek kullanım asagıdaki gibidir;

<form id="frm1" defaultbutton="Tikla1" runat="server">
<asp:textbox id="txt1" runat="server"/>
<asp:button id="Tikla1" text="Form`a Ait Buton" runat="server"/>
<asp:panel ID="Panel1" defaultbutton="tikla2" runat="server">
<asp:textbox id="txt2" runat="server"/>
<asp:button id="tikla2" text="Panel`e Ait Buton" runat="server"/>
</asp:panel>
</form>

Etiketler: #ASP.NET #ASP.NET 2.0
Paylaş:

Yorumlar (6)

Ü
ürfet dede 23 Ağu 2008 02:00

ya hocam süper bir makale bravo süper anlatım :)

S
sedat 17 Ağu 2009 19:38

Teşekkür ederim çok iyi bir ipucu

S
sumeyye 10 Haz 2010 21:20

eğer sayfamızda master page varsa 2. seçeneği kullanmak kullanış açısı bakımından zor olmazmı?js kullansak oda firefoxta çalışmıyor.orta yol nasıl bulunabilir.

İ
ihsan ay 05 Eyl 2011 20:03

çok teşekkürler. 2. seçenek işime yaradı.

M
mucahit 26 Eyl 2016 11:30

Çok işe yaradı. Teşekkürler Hocam...

Ş
şefik karakurt 01 Ağu 2017 17:49

hala çok işe yarıyor. yıllar geçmiş üstünden hala paylaşımdan faydalanabiliyoruz.

Yorum bırak

* Yorumlar moderasyon sonrası yayınlanır. E-posta gizli tutulur.