Skript-Tags über AJAX laden

8

Ich habe ein Div-Tag, das über einen Ajax-Aufruf mit Skript gefüllt ist, aber das Skript wird nicht ausgeführt.

Gibt es eine Möglichkeit, das Skript auszuführen?

    
BahaiResearch.com 25.11.2009, 23:11
quelle

4 Antworten

10

Wenn Sie die .html -Methode von jQuery verwenden, parst sie das Skript-Tag aus und erinnert es:

%Vor%

Wenn jQuery keine Option ist, können Sie dies selbst schreiben, indem Sie entweder (1) einen regulären Ausdruck verwenden oder (2) die DOM-Struktur analysieren und Skript-Tags suchen. (# 2 ist, wie jQuery es tut)

    
Caleb 26.11.2009, 05:19
quelle
3

Es ist immer eine gute Idee, den Inhalt vom Code zu trennen. Laden Sie Inhalte über AJAX und Code, indem Sie <script> -Tags einfügen. Wenn Sie jQuery verwenden, verwenden Sie $.getScript() , um Skripte dynamisch zu laden.

    
Chetan Sastry 25.11.2009 23:17
quelle
2

Ich schätze, Sie schreiben das Skript-Tag direkt in innerHTML

Dies wird nicht funktionieren.

%Vor%

Sie müssen mit DOM-Funktionen wie diesem schreiben

%Vor%

oder Verwenden Sie besser jQuery

    
YOU 26.11.2009 05:36
quelle
0

Wenn Sie innerHtml von div festlegen, sollten die Skript-Tags ausgeführt werden. Ich verwende $ ("# divid"). Load () um dynamische Inhalte zu laden und Skript-Tags auszuführen.

Versuchen Sie JQuery zu verwenden, wenn es nicht mit einfachem Javascript funktioniert.

    
jatanp 25.11.2009 23:14
quelle

Tags und Links