Maison > interface Web > js tutoriel > Comment exécuter des scripts injectés après une requête AJAX en utilisant innerHTML ?

Comment exécuter des scripts injectés après une requête AJAX en utilisant innerHTML ?

Mary-Kate Olsen
Libérer: 2024-11-22 08:26:11
original
555 Les gens l'ont consulté

How to Execute Injected Scripts After an AJAX Request using innerHTML?

Exécution de scripts injectés via innerHTML après une requête AJAX

Lorsque vous utilisez AJAX pour remplir un élément avec les données d'un script côté serveur, il est Il est courant d'inclure une balise de script dans ces données. Cependant, par défaut, ces scripts injectés ne sont pas exécutés. Cet article présente une solution pour exécuter de tels scripts après l'appel AJAX.

Problème :

Considérez un div avec l'identifiant "Content" qui reçoit dynamiquement des données, y compris un < ;script> tag, à partir d'un fichier PHP via AJAX. Malgré la présence de la balise script, le code qu'elle contient reste inexécuté.

<div>
Copier après la connexion

Solution :

Pour exécuter le script injecté via innerHTML, utilisez le code suivant :

var arr = MyDiv.getElementsByTagName('script');
for (var n = 0; n < arr.length; n++)
    eval(arr[n].innerHTML); //run script inside div
Copier après la connexion

Ce code récupère le

Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal