![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Przejrzałem kilka wątków w tym temacie ale nic sensownego nie znalazłem, może ktoś z grupowiczów mi pomoże .... ? Otóż mam taki problem: 1.skrypt.php który generuje mi kod html+javascript - działa wywołany bezpośrednio np. 2. natomiast jeśli przepuszczam go przez AJAX - już nie !
3. jesli w pliku skrypt.php mam np. <script> alert('tekst'); </script> - to eval działa, ale jesli np chciałbym już coś wyświetlić w odpowiednim miejscu kodu html generowanego w tym skrypcie to już nie daje rady ![]() Czy ktoś z szanownych grupowiczów przyjdzie mi z pomocą ? Może jest jakaś inna ścieżka na rozwiązanie tego problemu ? POMOCY ! pozdr, AdamP |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jakbyś użył jQuery to byś nie miał problemu
![]() jQuery z automatu przetwarza kod js -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 706 Pomógł: 108 Dołączył: 12.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ajax służy do pobierania danych, a nie do pobierania kodu JS. Oczywiście, można i tak, ale to nie jest najlepszy pomysł. Napisz co chcesz osiągnąć - na pewno można to zrobić w lepszy (bezpieczny) sposób.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie za szybką odpowiedź
![]() Przerobiłem kod do jQuery - fakt, szybko, miło i sprawnie ...niestety utknąłem w tym samym miejscu. A o to przykład: (później opiszę do czego mi to potrzebne, być może faktycznie powinienem isć inną drogą rozumowania?) 1. plik z ajaxem:
oraz kod z pliku wywoływanego przez jQuery (ajax) ....(akurat w tym przypadku echo z pierwszego i drugiego pliku niczym się nie różni ale w założeniu ma być i to znacznie)
OK. to był przykład który jeśli by mi zadziałał byłbym już w domu. A teraz pokrótce opiszę co chciałbym uzyskać. Otóż mój kod php generuje formularz na podstawie konfiguracji zapisanej w bazie.Kilka typów kontrolek może wywoływać podscenariusze formularza głównego w zależności od konfiguracji i aktualnych danych. Efekt docelowy który chcę/muszę uzyskać to aby po zmianie wartości kontrolki x odrysować nowy formularz wraz z podscenariuszem wywołanym przez tą kontrolkę bez odświeżania strony.Czyli plik php wywolany przez ajax'a ma za zadanie stworzyć nową wersję scenariusza wysyłając echo 'kod html';. Wszystko działa pięknie jeśli mam standardowe kontrolki, ele wykorzystuję w formularzu dwie dodatkowe (gotowce javascript), które po przeładowaniu przez ajax już nie działają ![]() Problem pokrótce wygląda tak. Czy jest na to jakieś sensowne rozwiązanie ![]() pozdr, AdamP |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
1) do diva o id div1 wgrywasz ajaxem znowu diva o id div1. W efekcie koncowym masz dwa divy o id div1 jeden w drugim
2) nie <script> a <script type="text/javascript"> 3) trudno mi coś wiecej powiedziec, mi tam takie cos zawsze dziala 4) masz to gdzies wystawione? Mozemy obejrzec to w dzialaniu? 5) zainstaluj sobie FireBug'a dla FireFox - bardzo pomaga przy takich sprawach -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Co do pkt 1. i 2. to faktycznie, jest jak mówisz. mój błąd co nie zmienia faktu że mi nie działa.
Dopiero dziś mogłem wystawić przykład. Możecie to podejrzeć na http://www.czg.pl/ajax/1.php Oba comboboxy wywołują akcję ajaxa. plik 2.php daje takie samo echo form1. efekt można zobaczyć. 1.php
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Mi tam Twoje selecty przeladowują całą stronę. Nic dziwnego ze ci nie dziala
![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ano właśnie coś jest nie tak z <script .... w pliku 2.php. bo jak wytne ten fragment to jest OK. Zerknij teraz
![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
a pokaz dokladnie co ladujesz w skript2.php
Włącznie z javascriptami. Dokladnie co do joty prosze ![]() Co robi te: DateInput("k15", true, "YYYY-MM-DD", "2010-06-25"); Bo mi się w firebugu wywala ze nie znalazl elementu k15 czy jakos tak. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
plik 2.php
i wersja z javascript
DateInput tworzy kontrolke data ktora masz w formularzu podstawowym plik 1.php ale problem chyba ogolnie jest z javascriptem po zaladuwaniu kodu w ajax. zamieniajac na jest to samo ![]() |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No hej,
to wina przez to document.write Jak tam dasz zwyklego alerta alert('blabla'); to dziala. A twoj kalendarz również korzysta z document.write. Nigdy nie uzywam tego ustrojstwa "document.write" więc się nigdy nie spotkalem z tym problemem. Nie mozesz skorzystac z normalnej kontrolki kalendarza? np. jQuery calendar. One pracują trochę bardziej "normalnie" ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Nigdy nie uzywam tego ustrojstwa "document.write" więc się nigdy nie spotkalem z tym problemem. Tej konstrukcji można używać wyłącznie na etapie renderowania strony. Więc w jakimkolwiek zdarzeniu ona po prostu nie zrobi niczego. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Więc w jakimkolwiek zdarzeniu ona po prostu nie zrobi niczego. Hehe, no wlasnie nie. W tym wlasnie opisanym tu przypadku to "badziewie" nie dość ze robi to jeszcze psuje ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
OK. Tak zrobiłem. i działa
![]() ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 00:50 |