![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
od już kilkunastu prawie godzin walczę z czymś, mam na dzieję banalnym i nie mogę za sobie z tym poradzić. Otóż: Mam stronę HTML: [...] <ul> <li> tresc pierwotna, która potrafi wywołać funkcję </li> <li> inna tresc pierwotna, która potrafi wywołać funkcję </li> </ul> <a href='#'>Wywołuje AJAX</a> [...] Mój kod jQuery obsługuje kliknięcie na zawartość każdego taga <li></li> i to działa bez zarzutu (wywołuje inną fukncję jQuery, która coś tam sobie robi). Natomiast jeżeli wywołam działanie AJAX`a poprzez kliknięcie na link "Wywołuję AJAX", które usuwa dotychczasowe tagi <li></li> wewnątrz tagu <ul> </ul> i wprowadza tam nowe tagi <li></li> np. <li> zawartość zwrócona przez AJAX</li> to te nowe tagi zdają się być "odporne" na moje klikania - nie chcą wcale współpracować z kodem jQuery. // Moje kombinowania // wstawiłem do index kod js function triggerRightMenu() { alert('test'); } a wstawiane przez ajaxa tagi wzbogaciłem o coś takiego <li><a href='#' onclick='triggerRightMenu()'> tresc AJAX`owa</a> </li>. Niestety alert się nie wywołuje... Natomiast w sytuacji kiedy AJAX zwraca <li><a href='#' onclick='alert('test');'> teraz tutaj alert działa </a> </li>. Nie trudno się wobec tego skapnąć, że załadowana treść AJAXA "nie widzi" kodu z pozostałej strony. Schematycznie ujmując | cała strona | | kod jQuery (...) - 1 | | |załadowana treść Ajax | | | | tutaj kod z 1 nie obsługuje tagów | Mam nadzieję, że czytelnie wyraziłem mój problem. Gorąco proszę o pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 27 Dołączył: 27.05.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Znam ten problem.. Miałem to samo ale wykombinowałem to trochę inaczej, a wręcz banalnie.
Tą swoją funkcje z alertem daj poza definicją jquery, tzn. bezpośrednio po <script> i dopiero po zamknięciu klamry tej funkcji deklaruj sobie co tam chcesz co ma być w $(document).ready. Oczywiście zdarzenia na elemencie onClick musisz dodać. Nie wiem dlaczego nie łapie wcześniej zadeklarowanego kodu typu:
Co prawda i przy tym pokombinowałem troche i jak tworzyłem klikalne elementy ajaxem, to od razu tworzyłem do tego coś ala obsługę takiego linka. Nie mam kodu pod ręką ale wyglądało to mniej więcej tak : To już działa normalnie tak jak utworzone przy ładowaniu całej strony elementy. A dlaczego tak się dzieje to nie mam pojęcia. Jak dojdziesz czemu tak się dzieje możesz się podzielić wiedzą (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Edit: Można i tak : [b]LIVE Ten post edytował nithajasz 11.05.2009, 11:12:33 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 11:44 |