Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML] Jak w polu textowym umieścic defaultowy text?
Forum PHP.pl > Forum > Przedszkole
LubieWino
Chodz konkretnie o to, że robie pole 'login' i 'haslo' i chciałbym aby text 'login' znajdował się defaultowo w środku okienka (po prostu dla informacji że w tym polu należy wpisać login) , a jeśli użytkownik kliknie aby wypełnić pole - wówczas ten text znika i użytkownik wpisuje właściwy login.
Analogicznie ma się zachowywać pole 'haslo'.
Jak można umieścic taki text w środku okienka?
z góry dzięki za odp.
Maxik
Kod
onfocus="if(this.value=='Login') this.value=''" onblur="if(this.value=='') this.value='Login'"


dodaj to do inputa, do hasłą jest input type="password", będą w nim gwiadki więc raczej nie przyda Ci się przy drugim polu.
LubieWino
hmm.. no tak, ale jeśli nie moge tego zastosować do pola z hasłem, to całość mija się z celem. Nie mozna tego jakoś obejść aby mimo wszystko też to działało przy haśle?
Maxik
W okienku z hasłem zawsze będą gwiazdki lub kropki. Możesz użyć obrazka z kluczykiem, kłódką lub z napisem "Hasło" jako tło inputa.
phpion
Cytat(Maxik @ 1.11.2008, 21:45:18 ) *
W okienku z hasłem zawsze będą gwiazdki lub kropki. Możesz użyć obrazka z kluczykiem, kłódką lub z napisem "Hasło" jako tło inputa.

...albo rozbudować Twój przykład o dynamiczną zmianę typu pola:
  1. <input type="text" value="Haslo" onfocus="if(this.value=='Haslo') { this.value=''; this.type='password'; }" onblur="if(this.value=='') { this.value='Haslo'; this.type='text'; }" />
LubieWino
Prawie działa..
jak wklejam inputa dla hasła... wówczas gdy klikam na pole z hasłem - literki nie zamieniają się w gwiazki, po prostu zwykły text...
Natomist jak wklejam do inputa to co podal Maxik - jest prawie ok, z tym, że jeśli ładuje stronke pierwszy raz - wtedy pole jest puste, dopiero jak klikne na pole i zejde z niego, to pojawia sie napis login.
Co z tym mozna zrobic :/?
hiszpanespaniol
nie testowałem, ale na zdrowy rozsądek:
jak widać, js Maxik'a ustawia wartość dla atrybutu "value" i uruchamia się przy zdarzeniu focus dopiero. dopisz value="Login" do kodu html dla pola input.
LubieWino
z Loginem jest wporządku wszystko... z hasłem prawie prawie... nie działa typ 'password', gdy wpisuje literki po prostu nie zamieniają się na gwiazdki :/
nexis
Rodzaj pola nie można dynamicznie zmieniać (np. z text na password i vice versa).
phpion
Cytat(nexis @ 3.11.2008, 00:02:10 ) *
Rodzaj pola nie można dynamicznie zmieniać (np. z text na password i vice versa).

Bo? Swój kod testowałem pod Operą i działał bez problemu. Na innych przeglądarkach nie sprawdzałem.
hiszpanespaniol
Racja. Generalnie jest taka zasada, ze podstawowa funkcjonalność strony musi być dostępna dla wszystkich, a więc i dla tych bez js.
Przykładowo (przykładowo! ) ktoś się łączy z komórki i ma wyłączone js, żeby nie obciążać transferu - nie zaloguje się taka osoba. Trzeba zrezygnować ze zmiany typu pola. Może daj po prostu value domyślne tak jak w przpadku loginu? za pomoca js zresetujesz je tylko. Albo lepiej: ustaw tło dla tego pola (np obrazek z napisem hasło jak juz tutaj Maxik radził)

ten sposób działa:
  1. <input type="password" onfocus="if(this.value == '****'){ this.value=''; }" value="****" name="password"/>
LubieWino
obrazek z napisem hasło? ale gdy ktoś kliknie w to pole to wówczas co? da rade zmienić to tło na puste czy jak? po prostu chce uzyskać taki sam efekt jak przy Loginie
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.