Injected ausführen Nach dem AJAX-Aufruf</h2> <p>In einer AJAX-basierten Anwendung kann es vorkommen, dass Sie ein <script> dynamisch injizieren müssen. -Tag in das DOM der Seite einfügen. Nachdem jedoch die AJAX-Antwort geladen und das <script> Tag, wird es möglicherweise nicht automatisch ausgeführt.</p> <h3>Problembeschreibung</h3> <p>Betrachten Sie ein div-Element mit der ID „Content“, das ein <script> enthält. Etikett. Nachdem ein AJAX-Aufruf erfolgreich Daten aus einer PHP-Datei in das „Content“-Div geladen hat, wird das <script> Tag innerhalb des geladenen Inhalts bleibt nicht ausgeführt.</p> <pre><div></pre> <pre><div></pre> <h3>Lösung</h3> <p>Um das injizierte <script> -Tag können Sie dessen innerHTML manuell mit JavaScript auswerten:</p> <pre>var arr = MyDiv.getElementsByTagName('script'); for (var n = 0; n < arr.length; n++) eval(arr[n].innerHTML); //run script inside div</pre> <p>Indem Sie die getElementsByTagName('script')-Sammlung durchlaufen und das innerHTML jedes <script>-Tags auswerten. Element innerhalb des „MyDiv“-Div können Sie sicherstellen, dass der injizierte Code ordnungsgemäß ausgeführt wird.</p>