3 sie 2009 o 19:56 | ASP.Net, JavaScript
Autor: admin |
Często zdarza się, iż wrzucamy na naszą WebForm kontrolkę TextBox, a zaraz obok niej przycisk, który wywołuje jakąś akcję związaną z treścią wpisaną do kontrolki, np. pole wyszukiwania.
Co zrobić, żeby użytkownik zamiast klikania w przycisk wcisnął Enter po wpisaniu treści do pola TextBox ?
Poniżej przedstawię dwa sposoby:
Sposób 1 – kontrolka PanelUmieszczamy obydwie kontrolki wewnątrz asp:Panel, której atrybut
defaultButton ustawiamy na nasz przycisk.
| 1 | <asp:panel defaultbutton="btnSearch runat="> |
| 2 | <asp:textbox id="textbox1" runat="server"> |
| 3 | <asp:button id="btnSearch" runat="server" text="Szukaj"> |
| 4 | </asp:button></asp:textbox></asp:panel> |
Sposób 2 - JavaScriptNa kontrolce TextBox dodajemy obsługę zdarzenia
OnClick (np. w zdarzeniu PageLoad).
| 01 | textbox1.Attributes.Add("onkeydown", |
| 02 | @"if(event.which || event.keyCode){ |
| 03 | if ((event.which == 13) || (event.keyCode == 13)) { |
| 04 | document.getElementById('" + btnSearch.UniqueID.Replace('$', '_') + |
| 05 | "').click(); |
| 06 | return false; |
| 07 | } |
| 08 | } else { |
| 09 | return true |
| 10 | }; "); |
10 lip 2009 o 6:06 | JavaScript
Autor: admin |
Chcemy ustawić wysokość DIV’a w zależności od rozdzielczości ekranu użytkownika odwiedzającego naszą witrynę.
Np. jeżeli rozdzielczość jest wyższa od danej wartości to wtedy nasz DIV otrzymuje określoną wysokość:
| 01 | <div id="spacer"></div> |
| 02 | <script language="JavaScript" type="text/javascript"> |
| 03 | <!-- |
| 04 | if (screen.height >= 768) { |
| 05 | var elem = document.getElementById('spacer'); |
| 06 | if (elem != null) { |
| 07 | elem.style.height = '30px'; |
| 08 | } |
| 09 | } |
| 10 | --> |
| 11 | </script> |