Javascript "Wasserzeichen" für Textfelder [duplizieren]

7

Ich würde gerne wissen, wie man Text in ein Textfeld legt, wenn die Seite geladen wird. Beispiel: Wenn ich eine Login-Seite hätte, hätte ich zwei Textboxen namens "Benutzername" und "Passwort". Wenn die Seite geladen wird, möchte ich, dass die Textbox mit "Username" geladen wird, also muss ich kein Label für diese Seite schreiben. Aber wenn der Benutzer in das Textfeld klickt, sollte es verschwinden. Wie mache ich das?

    
sin 15.12.2009, 23:45
quelle

6 Antworten

19
%Vor%

... aus dem Suchfeld Stapelüberlauf .

Sie könnten auch das onblur -Ereignis hinzufügen, das überprüft werden soll: if (this.value=='') this.value = 'search'

Dies würde das Wasserzeichen erneut drucken, wenn der Benutzer außerhalb des Textfelds klickt und das Feld leer ist.

    
Daniel Vassallo 15.12.2009 23:48
quelle
5

Ein modernerer Weg ist die Verwendung von "PlaceHolder"

%Vor%     
Jason Geiger 01.08.2014 17:24
quelle
4

Es gibt viele Tutorials, wie man das macht. Hier ist eine Anleitung mit dem jQuery Javascript Framework.

Hier ist ein weiterer beliebter Blog-Eintrag , nur mit normalem Javascript.

    
womp 15.12.2009 23:50
quelle
4

In Laien ausgedrückt:

  • Wenn Sie sich auf die Eingabe konzentrieren, wenn der Wert "Benutzername" lautet, setzen Sie ihn auf ""
  • Wenn Sie den Fokus von der Box entfernen, wenn der Wert "" ist (d. h. nichts eingegeben wurde), setzen Sie ihn auf "Benutzername" zurück, um dem Benutzer noch eine Rückmeldung zu geben, da er noch keine Daten eingegeben hat

Der Code:

%Vor%     
Mark Ursino 15.12.2009 23:51
quelle
0

JS:

%Vor%

Geben Sie in Ihrem Textfeld onfocus="clearDefault(this)" ein und legen Sie den Text auf "Benutzername" oder "Passwort" fest.

    
jball 15.12.2009 23:50
quelle
0

Siehe diesen Artikel Ссылка . Wenn Sie jQuery verwenden, gibt es natürlich "Label over" -Plugins.

    
Chetan Sastry 15.12.2009 23:50
quelle

Tags und Links