Heim > Web-Frontend > js-Tutorial > Hauptteil

Können Sie JavaScript-Funktionen aufrufen, die von Ajax-Antworten zurückgegeben werden?

Susan Sarandon
Freigeben: 2024-10-22 20:59:02
Original
1004 Leute haben es durchsucht

Can You Call JavaScript Functions Returned from Ajax Responses?

Aufrufen von JavaScript-Funktionen, die von Ajax-Antworten zurückgegeben werden

In vielen Systemen geben Ajax-Anfragen Skriptblöcke zurück, die Funktionen enthalten, die nach dem Einfügen von Daten aufgerufen werden müssen . Dies wirft die Frage auf, ob solche Funktionen nach dem Einfügen in ein DIV aufrufbar sind.

Ist das möglich?

Ja, der Aufruf zurückgegebener JavaScript-Funktionen ist möglich, vorausgesetzt:

  • Die zurückgegebene Funktionsdeklaration ist syntaktisch korrekt.
  • Die Funktionsdeklaration wird mit eval() ausgewertet. Dadurch wird der Deklarationscode ausgeführt und die Funktion während der gesamten Lebensdauer der Seite verfügbar gemacht.

Beispielcode:

Der folgende Code veranschaulicht das Konzept ohne Verwendung von Ajax:

<code class="javascript">var newsc = '<script id="sc1" type="text/javascript">function go() { alert("GO!") }</script>';
var e = document.getElementById('div1');
e.innerHTML = newsc;
eval(document.getElementById('sc1').innerHTML);</code>
Nach dem Login kopieren

Überlegungen:

Sie können die Funktion zwar in eine separate .js-Datei externalisieren, es kann jedoch zu Problemen bei wiederholten Ajax-Aufrufen oder Funktionskontextänderungen kommen. Überlegen Sie sich daher Ihre Designentscheidungen sorgfältig.

Alternativer Ansatz:

Wenn Sie unmittelbar nach Erhalt der Ajax-Antwort einen kontextbewussten Aufruf der Funktion benötigen, wird die Verwendung empfohlen Der von Krosenvold beschriebene Prototyp-Ansatz. Es ist browserübergreifend, getestet und bietet eine solide Grundlage für zukünftige Implementierungen.

Das obige ist der detaillierte Inhalt vonKönnen Sie JavaScript-Funktionen aufrufen, die von Ajax-Antworten zurückgegeben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!