Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Javascript] Dynamiczne pola
tenior
post 25.02.2010, 15:01:21
Post #1





Grupa: Zarejestrowani
Postów: 58
Pomógł: 2
Dołączył: 16.11.2008

Ostrzeżenie: (10%)
X----


Problem polega na zaznaczeniu opcji radio ma ukryć część formularza i pokazać inne pola
  1. <tr><td width="150" align="left" valign="top">Opcja:</td><td>
  2. <input type="radio" name="pers" value="firma"> FIRMA<br>
  3. <input type="radio" name="pers" value="osoba" checked> OSOBA FIZYCZNA<br>


Standardowo wyświetlane są pola
  1. <tr><td width="150" align="left">Imię i Nazwisko:</td><td><input size="23" name="imie"></td></tr>
  2. <tr><td width="150" align="left">Numer pesel:</td><td><input size="23" name="pesel"></td></tr>


Ale po wybraniu opcje chce aby te dwa pola znikly a pojawily sie
  1. <tr><td width="150" align="left">Nazwa firmy:</td><td><input size="23" name="nazwafirmy"></td></tr>
  2. <tr><td width="150" align="left">NIP:</td><td><input size="23" name="nip"></td></tr>


Widziałem taką kombinację na jakiejś stronie jednak nie mogę sobie przypomnieć adresu.
Go to the top of the page
+Quote Post
#luq
post 25.02.2010, 15:18:34
Post #2





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

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


Wrzucasz obie te kombinacje pól w osobne divy o jakichśtam id, do inputa[name="pers"] dodajesz zdarzenie onchange, które sprawdza czy jest zaznaczony czy nie, i na tej podstawie ukrywa jeden div, a pokazuje drugi.
Tyle w teorii, a praktyka czyni mistrza, pamiętaj winksmiley.jpg


--------------------
Moja gra - scraby.io
Go to the top of the page
+Quote Post
tenior
post 25.02.2010, 15:29:44
Post #3





Grupa: Zarejestrowani
Postów: 58
Pomógł: 2
Dołączył: 16.11.2008

Ostrzeżenie: (10%)
X----


jesli bylo by to tak proste to bym to zrobił, jak widać nie na darmo umieściłem znaczniki
  1. <tr>
Go to the top of the page
+Quote Post
lord_t
post 25.02.2010, 15:46:32
Post #4





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

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


Możesz to samo spróbować dla tr. Ewentualnie może zmiana wysokości (możliwe ze trzeba będzie pokombinować też z td).


--------------------
Go to the top of the page
+Quote Post
ayeo
post 25.02.2010, 15:47:53
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 202
Pomógł: 117
Dołączył: 13.04.2007
Skąd: 127.0.0.1

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


Witam!

Nie rozumiem co za problem w dodaniu jakiejś klasy do TR?

Pozdrawiam!


--------------------
Go to the top of the page
+Quote Post
#luq
post 25.02.2010, 15:59:36
Post #6





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

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


Oj sorry nie zauważyłem, że to w <tr /> siedzi...

Ogólnie to niczego nie zmienia, mógłbyś nawet tego diva wepchnąć chyba by wyglądało okej, że walidator by się pluł. Dodaj do tych <tr/> z obu kombinacji różną klasę i po tym wyszukasz element w DOM i go ukryjesz.
Rozumiem, że piszesz w czystym JS`ie, a więc getElementByTag() i sprawdzasz klasę elementu. Tyle winksmiley.jpg

@edit: widzę, że mnie uprzedzono

Ten post edytował #luq 25.02.2010, 16:00:48


--------------------
Moja gra - scraby.io
Go to the top of the page
+Quote Post
vtuner
post 25.02.2010, 15:59:54
Post #7





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


No ale znaczniki <TR> mogą przyjmować takie same wartości style co <DIV> (tj. style="display: none"), więc robisz tak samo jak na DIV'ach. Nadajesz tym TR jakieś id (np. id="pierwszy_rzad") i potem w JS bierzesz metodę getElementById (czy podobna nazwa, już zapomniałem, bo dawno nie pisałem w czystym JS) i nadajesz odpowiedni display

Ten post edytował vtuner 25.02.2010, 16:02:44
Go to the top of the page
+Quote Post
tenior
post 25.02.2010, 18:06:39
Post #8





Grupa: Zarejestrowani
Postów: 58
Pomógł: 2
Dołączył: 16.11.2008

Ostrzeżenie: (10%)
X----


właśnie w <tr> nie chce coś mi id działać
Go to the top of the page
+Quote Post
lord_t
post 25.02.2010, 18:13:42
Post #9





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

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


A dałeś dla każdego wiersza rożne id? Bo id nie może się powtarzać. Możesz skorzystać z klas.


--------------------
Go to the top of the page
+Quote Post
tenior
post 25.02.2010, 21:12:17
Post #10





Grupa: Zarejestrowani
Postów: 58
Pomógł: 2
Dołączył: 16.11.2008

Ostrzeżenie: (10%)
X----


Dziękuję wszystkim za pomoc, a w szczególności lordowi smile.gif
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: 26.04.2024 - 22:07