Laden...

ASP: Event beim Client

Erstellt von Kaeptn-G. vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.040 Views
K
Kaeptn-G. Themenstarter:in
147 Beiträge seit 2008
vor 15 Jahren
ASP: Event beim Client

Hi,

Ich hab eine ASP-Seite mit einer Multiline-Textbox.
Allerdings kann man da mehr reinschreiben als meine Datenbank verträgt (mehr als 255 Zeichen).
Deshalb will ich ein Event, das beim Client nach jedem Tastendruck die Anzahl der Zeichen in der Textbox überprüft und nicht mehr als 255 Zeichen zulässt.

Ich habe das mal mit:

beschreibung.Attributes.Add("onKeyPress", "if (beschreibung.Text.Length() > 10){ beschreibung.Text.Remove(9);}");

probiert ("beschreibung" ist das Textfeld).
Das funktioniert aber leider nicht (evtl. nur mit JScript).

Kann mir da jemand weiterhelfen?

Wer glaubt, Unternehmensberater könnten Unternehmen beraten,
der glaubt auch, Zitronenfalter könnten Zitronen falten.

J
537 Beiträge seit 2007
vor 15 Jahren

Hi,

du verwechseltst JavaScript mit C#, bzw. Clientcode mit Servercode

 string script = String.Format("if (document.getElementById('{0}').value.length > 10){{document.getElementById('{0}').value=document.getElementById('{0}').value.substr(0, 9);}}", beschreibung.ClientId);
beschreibung.Attributes.Add("onkeypress", script);

5.942 Beiträge seit 2005
vor 15 Jahren

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

K
Kaeptn-G. Themenstarter:in
147 Beiträge seit 2008
vor 15 Jahren

Danke!!! naja, ihr wisst ja bestimmt: je später der abend desto verwirrter bin ich^^

wenn ich den ganzen tag nur Programmier, geht irgendwann nix mehr und ich komme auf die skurrilsten Ideen^^

Wer glaubt, Unternehmensberater könnten Unternehmen beraten,
der glaubt auch, Zitronenfalter könnten Zitronen falten.

B
114 Beiträge seit 2007
vor 15 Jahren

An und für sich sollte das doch aber gehen. Die Syntax ist nur falsch, weils halt jscript is statt C#.
Aber ist das der richtige Weg Textlänge zu validieren?

J
537 Beiträge seit 2007
vor 15 Jahren

An und für sich sollte das doch aber gehen. Die Syntax ist nur falsch, weils halt jscript is statt C#. nö, es war nicht nur die syntax falsch. Die Valisierung sollte Clientseitig per JavaScript (nicht JScript) funktionieren. Man kann nicht clientseitig mit einem serverseitigen Objekt arbeiten.

Aber ist das der richtige Weg Textlänge zu validieren? Wieso nicht? Klar Validation Controls wären auch noch eine Möglichkeit. Problematisch ist eine clientseitige Validierung nur, wenn sie auf einer öffentlich zugänglichen Webseite eingesetzt wird.