KeyDown in ASP .NET – CSharp
- Januar 13th, 2009
- Posted in ASP.NET . CSharp . Development
- Kommentar schreiben
Ich hatte ja schon hier einmal beschrieben, wie man in C# via Entertaste eine TextBox bestätigt und so den eingegebenen Wert weiterverarbeitet.
Ich wollte dies nun in ASP.NET nutzen, musste jedoch feststellen, das es dort kein Eventhandler für KeyDown gibt.
Nach einer Suche im Netz, bin ich dann auf folgende VB.NET Lösung gestossen*, welche ich in C# umgeschrieben habe.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #region EnterButton void EnterButton(WebControl _textBox, Control _button) { StringBuilder sb = new StringBuilder(); sb.Append(("<SCRIPT language=\"javascript\">" + Environment.NewLine)); sb.Append(("function fnTrapKD(btn){" + Environment.NewLine)); sb.Append((" if (document.all){" + Environment.NewLine)); sb.Append((" if (event.keyCode == 13)" + Environment.NewLine)); sb.Append((" { " + Environment.NewLine)); sb.Append((" event.returnValue=false;" + Environment.NewLine)); sb.Append((" event.cancel = true;" + Environment.NewLine)); sb.Append((" btn.click();" + Environment.NewLine)); sb.Append((" } " + Environment.NewLine)); sb.Append((" } " + Environment.NewLine)); sb.Append(("}" + Environment.NewLine)); sb.Append(("</SCRIPT>" + Environment.NewLine)); _textBox.Attributes.Add("onkeydown", "fnTrapKD(document.all." + _button.ClientID + ")"); Page.ClientScript.RegisterStartupScript(GetType(), "ForceDefaultToScript", sb.ToString()); } #endregion |
Aufgerufen wird dann das ganze im Load und zwar so:
1 | EnterButton(txtBoxAddField, btnSave_Method); |
Viel Spass damit ; )
Ähnliche Beiträge
Auch wenn Du nichts zu diesem Thema sagen möchtest, bringst du mit einem Klick auf den Like- oder KickButton zum Ausdruck, dass dir dieser Artikel gefällt. Vielen Dank : )




Noch keine Kommentare.