Maison > interface Web > js tutoriel > le corps du texte

Pouvez-vous appeler des fonctions JavaScript renvoyées par les réponses Ajax ?

Susan Sarandon
Libérer: 2024-10-22 20:59:02
original
1004 Les gens l'ont consulté

Can You Call JavaScript Functions Returned from Ajax Responses?

Appel de fonctions JavaScript renvoyées par les réponses Ajax

Dans de nombreux systèmes, les requêtes Ajax renvoient des blocs de script contenant des fonctions qui doivent être appelées après l'insertion des données. . Cela soulève la question de savoir si de telles fonctions sont appelables après avoir été insérées dans un DIV.

Est-ce possible ?

Oui, l'appel des fonctions JavaScript renvoyées est possible, en supposant :

  • La déclaration de fonction renvoyée est syntaxiquement correcte.
  • La déclaration de fonction est évaluée à l'aide de eval(). Ceci exécute le code de déclaration et rend la fonction disponible tout au long de la durée de vie de la page.

Exemple de code :

Le code suivant illustre le concept sans utiliser 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>
Copier après la connexion

Considérations :

Bien que vous puissiez externaliser la fonction dans un fichier .js distinct, cela peut entraîner des problèmes avec des invocations Ajax répétées ou des changements de contexte de fonction. Par conséquent, réfléchissez attentivement à vos choix de conception.

Approche alternative :

Si vous avez besoin d'un appel contextuel de la fonction immédiatement après avoir reçu la réponse Ajax, il est recommandé d'utiliser l'approche Prototype décrite par Krosenvold. Il est multi-navigateur, testé et fournit une base solide pour les implémentations futures.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!