wieviele zeichen noch übrig?
kurtspeck
- javascript
Hi,
hab ne Textarea:
<textarea name="kommentar">ich bin es</textarea>
nun möchte ich sowas wie maxlength="200" verwenden.
Weiss jemand, wie das geht?
Kann leider auch nicht bei Google suchen, weil ich nicht weiss, wie man das nennt.
Hallo kurtspeck,
Kann leider auch nicht bei Google suchen, weil ich nicht weiss, wie man das nennt.
vll zeichenbegrenzung textarea?
Mit freundlichem Gruß
Micha
Sowas hab ich auch schon gefunden. Das ist aber nicht das was ich suche!
Ich möchte, dass bei Erreichen von 200 Zeichen keine weiteren Zeichen eingegeben werden können. Es soll dann einfach nicht mehr gehen.
Wichtig ist auch, dass die bereits befindlichen Zeichen zwischeen <textarea> und </textarea> (z.b. "Wie gehts?") auch zählen sollen.
Beispiel:
<textarea name="kommentare">hallo</textarea>
Das "hallo" müsste also schon von 200 subtrahiert werden.
Hallo kurtspeck.
Sowas hab ich auch schon gefunden. Das ist aber nicht das was ich suche!
Ich möchte, dass bei Erreichen von 200 Zeichen keine weiteren Zeichen eingegeben werden können. Es soll dann einfach nicht mehr gehen.
Eine mögliche Umsetzung in JS könnte wie folgt aussehen:
window.onload = function() {
// Wahlweise auch per document.[ref:self812;javascript/objekte/forms.htm@title=forms].[ref:self812;javascript/objekte/elements.htm@title=elements]
var t = document.[ref:self812;javascript/objekte/document.htm#get_elements_by_tag_name@title=getElementsByTagName]('textarea')[0]; // Erste Textarea
t.maxLength = 200; // Frei selbst definiert
t.[ref:self812;javascript/sprache/eventhandler.htm#onkeydown@title=onkeydown] = function() { // Bei Tastendruck
if (this.value.length > this.maxLength) { // Beide Längen prüfen
this.value = this.value.[ref:self812;javascript/objekte/string.htm#substr@title=substr](0, this.maxLength); // Inhalt stutzen
}
};
};
Beachte aber, dass bei deaktiviertem JS dennoch beliebig viele Zeichen eingegeben werden können; eine zusätzliche serverseitige Überprüfung ist also unverzichtbar
Einen schönen Samstag noch.
Gruß, Mathias
Hallo Mathias Brodala,
Beachte aber, dass bei deaktiviertem JS dennoch beliebig viele Zeichen eingegeben werden können
oder bei aktivem JS mit der Maus problemlos Zeichen oder Texte, die Deine maxLength überschreiben, reinkopiert werden könnten. Hier müsste wohl die Kombination aus mehreren Event-Handlern her.
Mit freundlichem Gruß
Micha
Hallo derletztekick.
Beachte aber, dass bei deaktiviertem JS dennoch beliebig viele Zeichen eingegeben werden können
oder bei aktivem JS mit der Maus problemlos Zeichen oder Texte, die Deine maxLength überschreiben, reinkopiert werden könnten. Hier müsste wohl die Kombination aus mehreren Event-Handlern her.
Wobei die Nutzung von onkeypress an Stelle von onkeydown schon günstiger ist.
Einen schönen Sonntag noch.
Gruß, Mathias