Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] dynamiczny select - pojawiający się input
devurien
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 27.03.2008

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


Dzień dobry,

mamy sobie pole select (dynamiczne), ale ze stałą 1 opcją 'Other':

  1. <options>1</options>
  2. <options>2</options>
  3. <options>Other</options>

Teraz chciałbym uzyskać taki efekt, że automatycznie po wybraniu rzeczonego 'Other' pojawi się input.
O ile wiem jak to robić dla <a> to nie wiem jak sie dobrać do tego selecta - jak wyciągnąć wartość..
Czy mógłby ktoś rzucić jakimiś wskazówkami?
I co jeśli na stronie mam kilka takich selectów i chciałbym za każdym razem mieć inne name=""..

P.S Czemu jQuery - uważam, że jest najlepiej przyswajalne IMHO..(IMG:style_emoticons/default/smile.gif)

Pozdrawiam.

Ten post edytował devurien 16.12.2009, 18:31:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
devurien
post
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 27.03.2008

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


  1. $(document).ready(function(){
  2.  
  3. $("select").change(function () {
  4.  
  5. str = $('option:selected', $(this)).text();
  6. clasName = $("select").attr("class");
  7.  
  8. $("select option:selected").each(function () {
  9. if (str == 'Other') {
  10. str += "<input name="+ clasName + str + " value= " + clasName +">";
  11. }
  12. });
  13. $(this).next('p').html(str);
  14. str.empty();
  15.  
  16. }).change();
  17.  
  18. });

W zasadzie realizuje wszystkie założone kryteria (reakcja na kliknięcie na wartość 'Other', wyświetlanie w odpowiednich miejscach-next() ) poza wstawianiem złego atrybutu z selekta z którego pochodzi kliknięcie.
Bierze class="xx" - z każdym razem ten sam czyli 1.
Naprawdę nie wiem jak to ugryźć.. (próbowałem różne wariację z definiowanym na sztywno inputem i zwracaniem class etc, z funkcją empty etc.) :/


Ten post edytował devurien 15.01.2010, 10:12:34
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 11.10.2025 - 23:24