Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] problem z dostępęm do dynamicznie dodanych elementów...
abort
post
Post #1





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

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


Pracuję nad elementem systemu składania zamówień (wyboru sprzętu). Jednym z elementów tegoż jest zależna lista rozwijana. Dodawanie elementów z dwóch zależnych selectów (kategorie i elementy kategorii) działa elegancko. Dodawane elementy zamówienia wrzucam do diva z id="hwlist" w takiej postaci:
  1. <div id="hwlist">
  2. <div name="6_1_7"> <!-- Schemat: zamówienie nr 6, element z tabeli 1 i wiersza 7 -->
  3. <p class="item">element z6 t1 r7</p>
  4. <p class="button">Usuń</p>
  5. </div>
  6. <div name="5_3_2"> <!-- idem -->
  7. <p class="item">element z5 t3 r2</p>
  8. <p class="button">Usuń</p>
  9. </div>
  10. </div>


I do tego kod jQuery:
Kod
    $('p.button').click(function() {
        alert ("Usuwanie");
    });

Taki prosty, bo... już myślałem, że zgłupiałem. Ale jednak nie zgłupiałem, i mój problem istnieje nadal...
Jeśli w/w kod html zostanie wczytany przez request przeglądarki - kliknę w <p class="button"> i jQ zadziała (wyskoczy mi okienko alertu).
Jeśli ten sam kod html dodam via jQuery - buttony są nieaktywne.
* Przeglądarki: FF10.0.1, Chrome 21, Opera 12.02. (na IE nie piszę)
W czym jest problem, gdzie robię błąd, co zrobić, by to zadziałało tak jak ja chcę (także dla elementów dodawanych)?
Go to the top of the page
+Quote Post
BaN
post
Post #2





Grupa: Zarejestrowani
Postów: 158
Pomógł: 43
Dołączył: 9.11.2007

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


Nie wiem jakiej wersji jquery używasz, ale dodawanie zdarzeń dla elementów, które zostaną utworzone po załadowaniu strony to odpowiednie ustawienie metody .on(), dla poniżej 1.7 można zastosować .live()
Go to the top of the page
+Quote Post
mindspeo
post
Post #3





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 5.10.2012

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


Załaduj jquery np. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script> przynajmniej zawsze najnowsza wersja będzie.

Jak dodajesz te elementy? Spróbuj dodać je poprzez użycie $parent = jQuery("<div>").addClass("hwlist").unbind('click').bind('click', function() { alert("test"); });
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 - 08:38