Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX] Wykonanie JS po udanym Request (SOLVED)
Skie
post
Post #1





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Witam,
W jaki sposób mogę "zmusić" skrypt by po wczytaniu pewnej strony PHP wczytał i wykonał plik JS?

Próbowałem w taki sposób dodając na końcu pliku PHP

Kod
print("<script type=text/javascript src=skrypt.js></script>");


I niby w tym miejscu jest pobierana zawartość pliku skrypt JS, lecz niestety kod w nim zawarty nie działa.

Wpisałem w skrypt.js taki kod na próbę:

Kod
$D('pole').innerHTML = 'test';


Sprawdzałem także jak zadziała tan plik wczytywany za pomocą href - działał dobrze - więc mam pytanie jak zrobić by działało to również przy Request() ?

Ten post edytował Skie 28.08.2008, 16:12:14
Go to the top of the page
+Quote Post
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Jeżeli się nie mylę to musisz użyć funkcji EVAL dla JS
Go to the top of the page
+Quote Post
Skie
post
Post #3





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Ale do czego "podłączyć" ten eval? Do całego Requesta? Tylko do pobieranego pliku JS?
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Do pobieranego JS. http://developer.mozilla.org/index.php?tit....5:Funkcje:eval
Go to the top of the page
+Quote Post
Skie
post
Post #5





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Próbowałem na 2 sposoby już:

W 1 przypadku zrobiłem
Kod
eval(this.responseText);


W 2 przypadku wewnątrz pliku JS
Kod
eval(document.write('test'));


Żaden sposób nie zadziałał :/ W jaki sposób mam jeszcze "podpiąć" ten eval(), żeby to funkcjonowało?
Go to the top of the page
+Quote Post
revyag
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Pierwszy sposób który podałeś wygląda na próbę uruchomienia kodu otrzymanego ajaxem.
Spróbuj tak:
Kod
eval('('+this.responseText+')');


Co ten kod w javascript ma robić i czemu nie możesz go dołączać w sekcji head ?
Go to the top of the page
+Quote Post
Skie
post
Post #7





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Podany przez Ciebie sposób też nie działa ;/

Ten skrypt ma się uruchamiać automatycznie po zakończeniu działania PHP i na podstawie wygenerowanych przez niego danych Tworzyć pewną pseudo-animację.
Go to the top of the page
+Quote Post
revyag
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Użyj jquery. Dołącz plik w sekcji head, kod javascript wrzuć do jednej funkcji np.init, a potem ją wywołaj.

Kod
<script type="text/javascript">
$(document).ready(function() {
init();
});
</script>
Go to the top of the page
+Quote Post
Skie
post
Post #9





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Dobra, zgrupowałem Request() i teraz "pobiera" on dwa pliki - osobno PHP i osobno JS. Jak ładowanie obu zakończy się sukcesem to skrypt jest wykonywany (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Skie 28.08.2008, 16:13:03
Go to the top of the page
+Quote Post

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: 23.08.2025 - 12:06