Bonjour à tous,
j'ai le problème suivant :
j'utilise Ajax (prototype et scriptaculous) pour générer un formulaire transcrit par XSLT préalablement décrit dans un document XML :
HTML--->AJAX--->PHP--->XSLTPROCESSOR--->Résultat dans un div (id="ici") du HTML
L'intrigue : le résultat du XSLTPROCESSOR contient du code javascript :
Code XML :
<script language="JavaScript">blablabla....</script>
Bien sur ce code ne peut être exécuté lors de l'affichage du résultat dans le HTML.
Du coup je fais ceci a partir du HTML qui lance la requete AJAX :
Code Javascript :
var scripts = document.getElelementById('ici').getElementsByTagName('script')
for (var i=0; i<scripts.length; i++) {
eval(scripts[i].text);
}
Ce qui théoriquement devrait exécuter mon code javascript contenu dans le résultat.
Il n'en n'est rien !
En effet : la balise <script> semble INTROUVABLE au yeux de getElementsByTagName !(dailleur la suite du code javascript n'est pas exécuté, il y a quelque chose ici que javascript n'aime pas...)
Le plus bizarre c'est que lorsque je fais un getElementsByTagName sur une balise
quelconque du résultat, eh ben la il, trouve...
le javascript est définit ainsi dans le XSL :
Code XML :
.
.
.
<xsl:template match='text'>
<input type="text" id="{@id}"/>
<script language="JavaScript">
<![CDATA[
alert("TEST");
]]>
</script>
</xsl:template>
.
.
.
Ca fait déjà un certain temps que je suis sur le problème.
Si quelqu'un peut m'aider avant que je ne trouve la solution dans 5 jours, ou que je n'abandonne mon projet, ce serait vraiment super et je lui serait très reconnaissant !
Merci d'avance.
Cordialement.