![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 187 Pomógł: 6 Dołączył: 31.08.2005 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
Problem polega na tym, że gdy wyświetlam na stronie responseText w którym jest fragment kodu javascript to w efekcie kod ten nie zostaje wykonany, po prostu nic sie nie dzieje. Gdy ten sam plik wyświetle normalnie na stronie to wszystko działa jak należy... Jak zrobić, żeby JS zadziałał przy wczytaniu z ajaxa?
To jest plik do którego odwołuję się przez ajax i zwracam go na stronie. Link oczywiście poprawnie wyświetla alert. Ten post edytował slammer 28.04.2007, 12:29:42 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 10 Dołączył: 8.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj skorzystać z prototype'a tam masz metodę `update` w klasie `Element`
http://www.prototypejs.org/api/element/update Możesz pobawić się samemu, ale jest z tym trochę roboty: - wyciągasz z tekstu JS - wklejasz go do HTML - wykonujesz JS zawarty w tekście -------------------- --------------------------------------------------------------------------------
weblog.axent.pl -------------------------------------------------------------------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 135 Pomógł: 1 Dołączył: 5.10.2005 Skąd: Opole/Chorzów Ostrzeżenie: (0%) ![]() ![]() |
może przepuść wynik przez funkcję eval()?
![]() Ten post edytował snipe 30.04.2007, 16:50:41 -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 157 Pomógł: 0 Dołączył: 12.02.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Witam! mam podobny problem, z tym że ja używam biblioteki xajax do obsługi technologii AJAX, i w sumie wszystko sprawnie idzie, po za tym małym mankamentem jakim jest właśnie problem z javascript umieszczonym w zwracanym kodzie strony...
Czy ktoś jest w stanie mi pomóc z tym ![]() P.S. szukałem w dokumentacji xajax może jest jakaś gotowa funkcja która ten problem niweluje, mi się nie udało jej znaleźć :/ Ten post edytował yaotzin 2.05.2007, 23:36:59 -------------------- ------
Per Aspera Ad Astra |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 9.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam identyczny problem, wczytując coś do DIV co posiada JS i powinno się wykonywać - poprostu nie działa. Jak widzę problem jest spory bo nie ma żadnych odpowiedzi rozwiązujących to.
-------------------- only Google!
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 157 Pomógł: 0 Dołączył: 12.02.2007 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Swoje już załatwiłem, w bibliotece xajax jest taka funkcja addScriptCall i addScript w zupełności wystarczyły do moich celów opisałem to w jakimś innym wątku.
A nie działa z tego powodu iż skrypt musiałby być wywołany przy ladowaniu strony, a przy ajax jest nieco inaczej i stąd problem, należy zrobić tak jak jest powyżej napisane albo użyć prototype.js (doskonały wzorzec projektowy) albo napisać własną funckcję temu służącą (może się ktoś podzieli :]) lub użyć tak jak ja to zrobiłem xajax i jego funkcji bibliotecznych. można też z xajax zgapić jak to jest zrobione metod jest wiele, a wynik pewnie jeden. -------------------- ------
Per Aspera Ad Astra |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
z przykroscia musze dolaczyc do dyskucji poniewaz mam taki sam problem z tym ze ja uzywam advAJAX i po sprawdzeniu w bazie w przypadku bledu chce zeby zwrocilo kod js ktory zmieni kolor pola input ale zamiast zmienic kolor kod jest wyswietlany.
Zna ktos rozwiazanie dla advAJAX?? -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#8
|
|
![]() Admin Techniczny Grupa: Administratorzy Postów: 2 071 Pomógł: 93 Dołączył: 5.07.2005 Skąd: Olsztyn ![]() |
wysyłany kod przepuścić przez eval?
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
wysyłany kod przepuścić przez eval? to pytanie czy odpowiedz?? -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#10
|
|
![]() Admin Techniczny Grupa: Administratorzy Postów: 2 071 Pomógł: 93 Dołączył: 5.07.2005 Skąd: Olsztyn ![]() |
Odpowiedź w formie pytania
![]() |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 9.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
No dobra, EVAL , ale jak tego użyć? Skoro mój skrypt wczytuje coś do DIV'a za pomocą .innerHTML? Jak użyć EVAL?
-------------------- only Google!
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 187 Pomógł: 6 Dołączył: 31.08.2005 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
możecie "przefiltrować" responseText w taki sposób:
znalezione gdzies na forum ![]() ![]() |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 2 Dołączył: 24.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Może to pomoże
Czyli najważniejsze dodać javascript do objektu header; poza tym w dodawanym .js można dodać funkcje która ma być od razu po załadowaniu wywołana. no i ![]() |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 10.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, przeczytałem wcześniejsze posty nie rozwiązało to mojego problemu. To mój kod:
Przy wykorzystaniu tego kodu pobieram podstronę i ją ładuję do div`a, no ale nie wykonuje się kod javascript tam zawarty, co jest logiczne, bo musi go przeglądarka przetworzyć a nie ma jak bo się strona nie przeładowała. Może to pomoże Czyli najważniejsze dodać javascript do objektu header; poza tym w dodawanym .js można dodać funkcje która ma być od razu po załadowaniu wywołana. no i ![]() To działa, ale tylko jak ładujesz zewnętrzne pliki js, a jak zrobić aby wykonał się kod między znacznikami <script>. Jak ktoś wiem, to prosił bym o jakieś konkretne rozwiązanie (co cza do mojego kodu dodać aby śmigało), bo przeglądnełem już chyba ze 100 storn www i kurna żadnych konkretów ... i proszę bez tekstów poszukaj w google, bo szuakłem i naprawdę ciężko coś znaleźć, powtarza się motyw z eval(), ale próbowałem i muszę chyba coś źle robić, bo za chiny mi to nie działa ... javascript to nie mój mocny punkt, ale chcę usprawnić portal napisany w php i gdyby nie ten problem , to szło mi nieźle z tym ajaxem..... z góry dzięki za odp. |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
to ciekawe ja korzystam z innerHTML i mi wszystko poprawnie działa ;]
a i podczas wykorzystania innerHTML przeglądarka musi zinterpretować to co zostanie przypisane więc kod powinien się wykonać ;] |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 10.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
No w ajaxie tak nie jest niestety ... kod się nie wykonuje
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 135 Pomógł: 1 Dołączył: 5.10.2005 Skąd: Opole/Chorzów Ostrzeżenie: (0%) ![]() ![]() |
nie umiecie przepuścić wyniku przez eval()
![]() -------------------- |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 10.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
nie umiecie przepuścić wyniku przez eval() ![]() Wychodzi misiu na to że nie, pomogłeś mi że hej ![]() Efekt przepuszczenia przez eval(), jest taki że strona mi się przeładowała i wykonał się tylko kod javascript. Dla przykładu, w pliku jest kod:
Plik ten pobieram przez ajax`a i wrzucam do div`a. Przed wykonianiem :
wykonuję funkcję którą podał kolega kilka postów wyżej. Efekt w FF, strona się przeładowuje i wyświetla się link xxxxx@wp.pl , czyli kod się wykonał, tylko że nic po za nim nie ma. W IE nic się nie dzieje, tylko sygnalizuje błąd javascript. Więc pytam się jak to powinno wyglądać, bo może coś źłe robię ... |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 187 Pomógł: 6 Dołączył: 31.08.2005 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
Kod działa tylko że jest mały zonk... trzeba całego JS zapisać w jednej linii... W przeciwnym wypadku zostanie zinterpretowana tylko jedna linijka kodu.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 10.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Fakt, teraz jak dałem w jednej linii kod to działa ... ale kurna dużo zachodu z tym, chyba sobie podaruje tego ajaxa ..... pozdro
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 11:23 |