Piotrek Kaźmierczak

Piotrek Kaźmierczak sky is the limit...

Temat: widoczność funkcji javascript załadowanej ajaxem

Tak jak w temacie: ładuję dane html, które zawierają tagi <script></script>, w których zadeklarowana jest jakaś funkcja javascript.

Co zrobić, żeby była widoczna i żebym mógł ją wykonać po załadowaniu danych.

Znalazłem metodę parsowania załadowanych danych i potraktowania kodu js evalem, ale z tego co pisali nie działa to pod IE i ogólnie to by nie spełniało chyba swojego zadania.

Ktoś może robił coś podobnego?

Pozdrawiam

konto usunięte

Temat: widoczność funkcji javascript załadowanej ajaxem

JSON?
Piotrek Kaźmierczak

Piotrek Kaźmierczak sky is the limit...

Temat: widoczność funkcji javascript załadowanej ajaxem

możesz rozwinąć swojego posta? co dokładnie masz na myśli?

konto usunięte

Temat: widoczność funkcji javascript załadowanej ajaxem

Zapędziłem się. Bez eval się raczej nie obejdzie.

http://weblogs.java.net/blog/driscoll/archive/2009/09/...
Działa pod IE.
Zawsze możesz użyć jakiegoś frameworka typu jQuery albo inny Prototype.

EDIT: LiterówkaAleksander Wons edytował(a) ten post dnia 17.05.11 o godzinie 17:45
Piotrek Kaźmierczak

Piotrek Kaźmierczak sky is the limit...

Temat: widoczność funkcji javascript załadowanej ajaxem

właśnie myślałem, że uda się to zrobić bez evala

p.s. używam frameworka - dojo

// sprawdziłem - działa pięknie
dla dojowców:
po zaladowaniu danych:

globalEval(dojo.query('script', dojo.byId("container"))[0].innerHTML);
nowa_funkcja();

gdzie container to miejsce gdzie zaladowalismy nasze dane
a nowa_funkcja jest zadeklarowana w dyrektywach <script></script> w tych danych

globalEval zaczerpnięte z linku, który podał Aleksander:

function globalEval(src) {
if (window.execScript) // eval in global scope for IE
window.execScript(src);
else // other browsers
eval.call(null, src);
}
Piotrek Kaźmierczak edytował(a) ten post dnia 17.05.11 o godzinie 16:45
Marcin Sołtysiuk

Marcin Sołtysiuk Web Developer, Roche

Temat: widoczność funkcji javascript załadowanej ajaxem

przeciez mozesz dociagnac js i wstawic w <script> w head.



Wyślij zaproszenie do