1
Hallo, bei einem Suchformular wird das Input-Feld wie folgt gesteuert:
wobei die Variable $text den String "suchen..." enthält.
Idee ist: Wenn ich die Seite aufrufe, steht defaultmäßig "suchen..." in dem Feld, wenn ich ins Feld klicke, verschwindet dieser String und ich kann eine eigene Eingabe machen. Tue ich das nicht und klicke wieder raus, steht wieder "suchen..." da.
Wenn jemand nun ein sinnvolles Wort eingebt, wird danach wunschgemäß gesucht. Problem: Wenn jemand gleich auf den Absendebutton klickt, ohne das defaultmäßige "suchen..." überschrieben zu haben, dann wird im Explorer (erstaunlicherweise nicht im Firefox) trotzdem nach "suchen..." gesucht - logisch, weil ich ja
Wenn ich das aber rausnehme, dann ist es nicht defaultmäßig beim ersten Aufruf der Seite, sondern erst beim Rein- und wieder Rausklicken da -> das ist natürlich nicht wunschgemäß.
Auch der Versuch von einem zusätzlichen
schlug fehl. Welche Möglichkeiten habe ich, damit "suchen..." defaultmäßig drinsteht als value, aber nie als solcher abgeschickt wird -> wenn "suchen..." noch drinsteht, soll ein leerer String abgeschickt werden. (Jede beliebige andere Eingabe soll als sie selbst abgeschickt werden.)
$output = '<input name="searchword" type="text" value="'.$text.'" onblur="if(this.value==\'\') this.value=\''.$text.'\';" onfocus="if(this.value==\''.$text.'\') this.value=\'\';" />';
echo $output;
wobei die Variable $text den String "suchen..." enthält.
Idee ist: Wenn ich die Seite aufrufe, steht defaultmäßig "suchen..." in dem Feld, wenn ich ins Feld klicke, verschwindet dieser String und ich kann eine eigene Eingabe machen. Tue ich das nicht und klicke wieder raus, steht wieder "suchen..." da.
Wenn jemand nun ein sinnvolles Wort eingebt, wird danach wunschgemäß gesucht. Problem: Wenn jemand gleich auf den Absendebutton klickt, ohne das defaultmäßige "suchen..." überschrieben zu haben, dann wird im Explorer (erstaunlicherweise nicht im Firefox) trotzdem nach "suchen..." gesucht - logisch, weil ich ja
value="'.$text.'"
dann noch drinstehen habe.Wenn ich das aber rausnehme, dann ist es nicht defaultmäßig beim ersten Aufruf der Seite, sondern erst beim Rein- und wieder Rausklicken da -> das ist natürlich nicht wunschgemäß.
Auch der Versuch von einem zusätzlichen
onsubmit="if(this.value==\''.$text.'\') this.value=\'\';"
schlug fehl. Welche Möglichkeiten habe ich, damit "suchen..." defaultmäßig drinsteht als value, aber nie als solcher abgeschickt wird -> wenn "suchen..." noch drinsteht, soll ein leerer String abgeschickt werden. (Jede beliebige andere Eingabe soll als sie selbst abgeschickt werden.)