LubieWino
1.11.2008, 18:01:38
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
1.11.2008, 18:11:20
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
1.11.2008, 18:25:42
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
1.11.2008, 19: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.
phpion
1.11.2008, 20:29:19
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:
<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
1.11.2008, 23:56:44
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
2.11.2008, 03:52:17
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
2.11.2008, 21:36:40
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
2.11.2008, 22:02:10
Rodzaj pola nie można dynamicznie zmieniać (np. z text na password i vice versa).
phpion
2.11.2008, 22:03:16
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
2.11.2008, 22:47:57
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:
<input type="password" onfocus="if(this.value == '****'){ this.value=''; }" value="****" name="password"/>
LubieWino
3.11.2008, 00:45:20
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.