Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z formularzem, Jak po wybraniu pozycji wyświetlić bez przeładowania drugę listę
cachaito
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 15.06.2009

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


Witam!

Mam prosty formularz:

  1. <label for="zodiac">Choose your zodiac sign:</label>
  2. <select name="zodiac" size="1">
  3. <optgroup label="Your zodiac sign:">
  4. <option value="leo">Leo</option>
  5. <option value="virgo">Virgo</option>
  6. </select>
  7.  
  8. <label for="more">Tell me more about you:</label>
  9. <select name="more" id="leo" size="1">
  10. <optgroup label="Tell me exacly about your leo sign:">
  11. <option value="first">I am from July</option>
  12. <option value="second">"I am from August"</option>
  13. </select>
  14.  
  15. <select name="more" id="virgo" size="1">
  16. <optgroup label="Tell me exacly about your virgo sign:">
  17. <option value="first">"I am from August</option>
  18. <option value="second">"I am' from September"</option>
  19. </select>


Listy #leo i #virgo są ukryte (display:none;). Jak zrobić (najlepiej z pomocą jQuery...) aby po wybraniu znaku zodiaku z listy pierwszej pojawiła się odpowiednia lista dla danego znaku? Chodzi o to, że gdy nacisnę na opcję Leo pojawia się
  1. <label for="more">Tell me more about you:</label>
  2. <select name="more" id="leo" size="1">
  3. <optgroup label="Tell me exacly about your leo sign:">
  4. <option value="first">I am from July</option>
  5. <option value="second">"I am from August"</option>
  6. </select>
zaś gdy zmienię zdanie i nacisnę Virgo, lista Leo chowa się i pojawia:
  1. <select name="more" id="virgo" size="1">
  2. <optgroup label="Tell me exacly about your virgo sign:">
  3. <option value="first">"I am from August</option>
  4. <option value="second">"I am' from September"</option>
  5. </select>


Będę wdzięczny za wszelkie wskazówki...

Ten post edytował cachaito 23.08.2010, 16:34:09


--------------------
cachaito - - - - - - - - - - - - - - - -
- - - - - http://cachaito.strefa.pl/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
askone
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Hej

Zobacz tutaj

Pozdrawiam


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
cachaito
post
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 15.06.2009

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


Dziękuje askone. Skrypty naprawdę świetne. Chciałbym jednak dalej pociągnąć ten wątek. Podane przez Ciebie pluginy to gotowe rozwiązania a Chained Selects jQuery Plugin to istna perełka. Myślałem nad tym problemem i myślę, że można go rozwiązać prościej. Kłopot w tym, iż nie umiem pisać świetnie w jQuery. Zamysł jednak mam (a nawet dwa) tylko, że nic nie działa :-(

dodajemy do optiona w select name="zodiac" klasę "znak1" i:
  1. $('.znak1').click(function(){ $('#leo').slideToggle('slow');


albo:
  1.  
  2. if ($('#zodiac').is(':selected')) {
  3. $('.#leo').slideDown();
  4. } else {
  5. $('this').slideUp(j);
  6. }


Macie jakieś pomysły?


--------------------
cachaito - - - - - - - - - - - - - - - -
- - - - - http://cachaito.strefa.pl/
Go to the top of the page
+Quote Post
askone
post
Post #4





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Spróbuj tak:
[JAVASCRIPT] pobierz, plaintext
  1. if ($("select[name='zodiac']").is(':selected'))
  2. {
  3. $('#leo').slideDown();
  4. } else {
  5. $(this).slideUp(j);
  6. }
[JAVASCRIPT] pobierz, plaintext


A poza tym to czytaj dokumentację, szczególnie dział o selektorach bo je mylisz winksmiley.jpg

Pozdrawiam


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
cachaito
post
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 15.06.2009

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


Nie działa :-/


--------------------
cachaito - - - - - - - - - - - - - - - -
- - - - - http://cachaito.strefa.pl/
Go to the top of the page
+Quote Post
askone
post
Post #6





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Spróbujmy inaczej:

[JAVASCRIPT] pobierz, plaintext
  1. $("#zodiac").change(function(){
  2. if($(this).val == 'leo')
  3. {
  4. $("#virgo").slideUp('slow', function(){ $("#leo").slideDown('slow');});
  5. }
  6. else
  7. {
  8. $("#leo").slideUp('slow', function(){ $("#virgo").slideDown('slow');});
  9. }
  10. });
[JAVASCRIPT] pobierz, plaintext


Oczywiście standardowo pisane z palca, bez testów winksmiley.jpg Ale są szanse, iż będzie działać...

edit: pomyliłem kolejność wywołania slideUp i slideDown

Ten post edytował askone 27.08.2010, 11:35:10


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
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 Aktualny czas: 20.08.2025 - 07:36