Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX] Wykonanie JS po udanym Request (SOLVED)
Forum PHP.pl > Forum > Przedszkole
Skie
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() ?
skowron-line
Jeżeli się nie mylę to musisz użyć funkcji EVAL dla JS
Skie
Ale do czego "podłączyć" ten eval? Do całego Requesta? Tylko do pobieranego pliku JS?
skowron-line
Do pobieranego JS. http://developer.mozilla.org/index.php?tit....5:Funkcje:eval
Skie
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?
revyag
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 ?
Skie
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ę.
revyag
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>
Skie
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 smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.