Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zmiana typu inputa
go_lab
post 19.06.2007, 01:56:50
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 19.06.2007

Ostrzeżenie: (0%)
-----


Witam!

Mam następujący problem:

Mam pole, trzeba wpisać login i hasło.
Chcę to rozwiązać w następujący sposób:
pole, w którym podaje się hasło domyślnie będzie miało wartość "wpisz hasło" czy "password" albo cośtam.
Chciałem zrobić tak, aby po kliknięciu na to pole można było wpisać hasło, ale aby pole zmieniło swoje atrybuty na zagwiazdkowane.

document.getElementById('pass').type='password'

nie działa, nie ma czegoś takiego.
Czy da się to wogóle zrobić?
Go to the top of the page
+Quote Post
wojtek.zielinski
post 19.06.2007, 05:46:25
Post #2





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 19.12.2006
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Można to rozwiązać na dwa sposoby, choć nie wiem, czy słuszne.

1. Zrobić odpowiedni obrazek z napisem "wpisz hasło" i wstawić jako background-image, a na onfocus usunąć to tło.

2. Bardziej skomplikowane rozwiązanie - zrobić dwa pola - <input type="text" value="wpisz hasło" /> i <input type="password" />, drugie pole domyślnie niewidoczne. W pierwszym dać na onfocus zniknięcie tego pola i pojawienie się drugiego z jednoczesnym przeniesieniem focusa.


--------------------
Wojtek Zieliński
http://www.zielinscy.pl
php portale cms
Go to the top of the page
+Quote Post
go_lab
post 19.06.2007, 09:06:38
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 19.06.2007

Ostrzeżenie: (0%)
-----


Zmiana tła stronki nie stanowi problemu, ale poprzez różne analogie nie mogę dojść do zmiany tła pola formularza.
Jeśli ktoś zarzuci jeszcze odpowiednią komendą będe bardzo wdzięczny.
Go to the top of the page
+Quote Post
Reigon
post 19.06.2007, 09:24:14
Post #4





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 19.10.2004

Ostrzeżenie: (0%)
-----


Sprobuj:
var input = document.getElementById('pass');
input.setAttribute("type","password");

Przy tworzeniu inputa dziala, nie testowalem natomiast czy mozliwa jest taka modyfikacja
Go to the top of the page
+Quote Post
fan_pascala
post 19.06.2007, 10:39:36
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 23.02.2007
Skąd: Niepołomice

Ostrzeżenie: (0%)
-----


W normalnych przeglądarkach to zadziała, ale w IE6 to się wysypie na linii :

  1. input.setAttribute("type","password");


--------------------
Programy|łatki|sterowniki
Go to the top of the page
+Quote Post
mara.tonczyk
post 19.06.2007, 11:04:56
Post #6





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 18.05.2007

Ostrzeżenie: (0%)
-----


od siebie dodam takie cos:



  1. function zmien()
  2. {
  3. document.getElementById('haslo').innerHTML='<input type="password" name="polehasla" id="polehasla" />';
  4. setTimeout("document.getElementById('polehasla').focus()", 50);
  5. }
  6. <div id="haslo">
  7. <input tyle="text" value="dawaj haslo" onclick="zmien()" />
  8. </div>




settimeout z dedykacja dla IE ktory chyba dlugo tworzy inputa ze potem go nie widzi przy poleceniu focus
Go to the top of the page
+Quote Post
abc667
post 19.06.2007, 14:58:36
Post #7





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

Ostrzeżenie: (0%)
-----


  1. <script type="text/javascript">
  2. function change()
  3. {
  4. document.forms['form'].elements['pole'].type = 'password'; //1
  5. document.getElementById('pole').type = 'password'; //2
  6. }
  7.  
  8.  
  9. <form name="form">
  10. <input type="text" name="pole" id="pole" value="wpisz hasło" onfocus="change();" />
  11.  
  12. </form>

obie formy działają
Go to the top of the page
+Quote Post
go_lab
post 19.06.2007, 15:07:48
Post #8





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 19.06.2007

Ostrzeżenie: (0%)
-----


Cytat(mara.tonczyk @ 19.06.2007, 12:04:56 ) *
settimeout z dedykacja dla IE ktory chyba dlugo tworzy inputa ze potem go nie widzi przy poleceniu focus


Nadal pojawia się "Nieznany błąd czasu wykonania."
A wcześniejsza propozycja sprawdza się w Mozilli, ale Explorer sie przy niej rozkłada
Go to the top of the page
+Quote Post
wojtek.zielinski
post 19.06.2007, 18:01:01
Post #9





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 19.12.2006
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(go_lab @ 19.06.2007, 10:06:38 ) *
Zmiana tła stronki nie stanowi problemu, ale poprzez różne analogie nie mogę dojść do zmiany tła pola formularza.
Jeśli ktoś zarzuci jeszcze odpowiednią komendą będe bardzo wdzięczny.



  1. <input type="password" id="passField" ... />
  2.  
  3. <script type="text/javascript">
  4. function ChangeBg()
  5. {
  6. document.getElementById('passField').style.backgroundImage = 'sciezka/plik.jpg';
  7. }


Ten post edytował wojtek.zielinski 19.06.2007, 18:01:14


--------------------
Wojtek Zieliński
http://www.zielinscy.pl
php portale cms
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:45