vorbelegte Formularfelder löschen
Stefan Einspender
- javascript
Hi Forumsleser!
Auf den verschiedensten Websites sind die diversenen Formularfelder schon vorbelegt,
um die Eingabe für den Benutzer zu erleichtern ("Hier Ihre e-Mail eingeben" usw.).
Diese Sache ist ja auch sehr sinnvoll, nur wie kann ich diese vorgegebenen Text bei
einer Eingabe (seiner Daten) durch den Benutzer automatisch löschen, er kann ja ent-
weder mit der TAB-Taste oder mit der Maus dorthin gelangen, nach Möglichkeit sollte
dann automatisch der vorgegebene Text verschwinden.
Noch eleganter wäre eine Lösung, die die "leeren" Felder (also auch wieder gelöschte)
automatisch mit diesen Texten ausfüllt, bei Eintragung die Nutzerdaten übernimmt (so
dass der Benutzer ohne die ungewollte automatische Löschung seiner Angaben nochmals
verändern kann) und bei Absendung des Formulares (e-Mail/CGI) diese Texte _nicht_ mit
übermittelt.
Eine Menge Anforderungen, vielleicht hat ja jemand eine Idee, ich freue mich auf eine
bald komplette Auslese (..im Archiv danach suchen ist nahezu unmöglich..).
Viele Gruesse,
Stefan Einspender
PS: Verbringt nicht den ganzen Tag vor dem Computer, heute scheint die Sonne, macht
was draus ... :)
Hi,
Auf den verschiedensten Websites sind die diversenen Formularfelder schon vorbelegt,
um die Eingabe für den Benutzer zu erleichtern ("Hier Ihre e-Mail eingeben" usw.).
Diese Sache ist ja auch sehr sinnvoll, nur wie kann ich diese vorgegebenen Text bei
einer Eingabe (seiner Daten) durch den Benutzer automatisch löschen, er kann ja ent-
weder mit der TAB-Taste oder mit der Maus dorthin gelangen, nach Möglichkeit sollte
dann automatisch der vorgegebene Text verschwinden.
ungetestet:
onFocus="if (this.value == this.defaultValue) this.value='';"
Noch eleganter wäre eine Lösung, die die "leeren" Felder (also auch wieder gelöschte)
automatisch mit diesen Texten ausfüllt, bei Eintragung die Nutzerdaten übernimmt (so
dass der Benutzer ohne die ungewollte automatische Löschung seiner Angaben nochmals
verändern kann) und bei Absendung des Formulares (e-Mail/CGI) diese Texte _nicht_ mit
übermittelt.
onBlur="if (this.value == '') this.value=this.defaultValue;"
PS: Verbringt nicht den ganzen Tag vor dem Computer, heute scheint die Sonne, macht
was draus ... :)
Gute Idee :-)
Cheatah
Hi Cheatah
ungetestet:
onFocus="if (this.value == this.defaultValue this.value='';"
onBlur="if (this.value == '') this.value=this.defaultValue;"
Danke, es funzt wunderbar (im NC 3.x gibt es wenigstens keine Fehlermeldung, auch gut ;-)
Ob es mit dem "leeren" Abschicken bei Standardvalue auch noch klappt, mal sehen ... ;-)
Viele Gruesse,
Stefan Einspender
Hi Forumsleser!
Auf den verschiedensten Websites sind die diversenen Formularfelder schon vorbelegt,
um die Eingabe für den Benutzer zu erleichtern ("Hier Ihre e-Mail eingeben" usw.).
Diese Sache ist ja auch sehr sinnvoll, nur wie kann ich diese vorgegebenen Text bei
einer Eingabe (seiner Daten) durch den Benutzer automatisch löschen, er kann ja ent-
weder mit der TAB-Taste oder mit der Maus dorthin gelangen, nach Möglichkeit sollte
dann automatisch der vorgegebene Text verschwinden.
Na das ist eine recht simple Frage des "Events". Dafür steht doch das "onfocus" zur Verfügung, also die Maus da hineinklickt, oder man mit der TAB Taste das Feld focusiert, dann dürfte ein
<input value="test" onfocus="this.value = ''" />
schon weiterhelfen ;)
Noch eleganter wäre eine Lösung, die die "leeren" Felder (also auch wieder gelöschte)
automatisch mit diesen Texten
Welche Texte? Verstehe ich nicht.
ausfüllt, bei Eintragung die Nutzerdaten übernimmt (so
dass der Benutzer ohne die ungewollte automatische Löschung seiner Angaben nochmals
verändern kann)
Dann wohl ein reload, oder?
und bei Absendung des Formulares (e-Mail/CGI) diese Texte _nicht_ mit
übermittelt.
Sorry, nixe verstehen ....
Eine Menge Anforderungen, vielleicht hat ja jemand eine Idee, ich freue mich auf eine
bald komplette Auslese (..im Archiv danach suchen ist nahezu unmöglich..).Viele Gruesse,
Stefan EinspenderPS: Verbringt nicht den ganzen Tag vor dem Computer, heute scheint die Sonne, macht
was draus ... :)
Schon getan,
CU
Boris
Hi Boris :)
Extra für Dich, die ganze Sache nochmal komprimiert: *g*
-ein beliebiges Formularfeld
-vorbelegter Value: "Geben Sie hier Unfug ein!"
-beim Reinklicken (Maus oder Tab-Taste) wird die Sache automatisch gelöscht
-wenn ich danach nochmal darauf zurückkomme (zum Ändern meiner Angaben) bleibt der eingegebene Text stehen (ich will ja nicht nochmal alles eintippen ;-)
-falls ich meine Eingabe löschen (wasweissichwarumundweswegen) kommt automatisch bei Verlassen dieses Feldes wieder der vorgegebene Value
-bei Absendung des Formulares werden diese vorgegebenen Values _nicht_ mit abgeschickt, d.h. diese Felder (wo nix eingegeben wurde und nur/wieder der vorgegebene Value steht) werden wie leere Felder behandelt, eventuell kann man die vorgegebenen und nicht "überschriebenen" Values direkt vor dem Submiten löschen???
Im Prinzip ist nur noch die letzte Sache ein Problem (vorgegebener Value soll wie leer abgeschickt werden) ein Problem, alle anderen Dingen (Value verschwindet beim Reinklicken und steht in leeren Feldern automatisch wieder drin) wurden schon durch Cheatah gelöst, s.u. ;-)
Danke Boris (+ nochmals Cheatah :)
Viele Gruesse,
Stefan Einspender
Hi,
-bei Absendung des Formulares werden diese vorgegebenen Values _nicht_ mit abgeschickt, d.h. diese Felder (wo nix eingegeben wurde und nur/wieder der vorgegebene Value steht) werden wie leere Felder behandelt, eventuell kann man die vorgegebenen und nicht "überschriebenen" Values direkt vor dem Submiten löschen???
Im Prinzip ist nur noch die letzte Sache ein Problem (vorgegebener Value soll wie leer abgeschickt werden)
tja, dann mach doch den Submit-Button als "normalen" (<input type=button>) mit einem onClick auf eine Funktion. Diese prüft alle document.forms[0].elements[x].value, ob sie == ...defaultValue sind, und löscht dann entsprechend. Anschließend führst Du auf das Formular noch submit() aus.
Hilft das?
Cheatah