Bonjour tout le monde,
Suite � ce post :
http://www.developpez.net/forums/vie...439640#2500971
J'ai voulu essayer mais ca ne marche pas sous IE...
Voici ce que je fais :
J'ai un bouton, quand je clique sur celui ci je fais une requete AJAX dans le but de remplir un div avec du HTML mais surtout dans le but de r�cup�rer et donc de cr�er � la vol� une fonction javascript que le serveur m'envoie.
Function qui g�re l'action du bouton:Function sendDataXML (les lignes importantes):
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8 if (document.getElementById('test_button')) { document.getElementById('test_button').onclick=function() { sendDataXML('POST','test_xml.php','valeur='+escape(document.getElementById('test_text').value),document.getElementById('test_result')); document.getElementById('test_result').innerHTML='Veuillez patienter...Requête en cours'; } }Et enfin le fichier test_xml.php :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12 function sendDataXML(method, url, data, noeudDest) { ..... xmlRequest.overrideMimeType('text/xml'); ...... if (xmlRequest.status == 200) { noeudDest.innerHTML=""; addChild(noeudDest,xmlRequest.responseXML.documentElement); } } ..... }
Sachant que la function sendDataXML utilise ceci:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <? include_once($_SERVER['DOCUMENT_ROOT']."global/lib.inc.php"); header('Content-type: text/xml; charset=iso-8859-15'); ?> <html> <body> <script type="text/javascript"> function toto(){ alert('bonjour <?=$_POST['valeur']?>'); } toto(); </script> Text en <b>HTML</b> </body> </html>Dans le post auquel je fais r�f�rence, Grepack a eu aussi une erreur sous IE, je ne sais pas si tu as r�ussi � la corrig� ...
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 function clone(elem){ if(elem.nodeName == "#text") return elem; c = document.createElement(elem.nodeName); if(elem.hasAttributes()){ for(var i=0;i<elem.attributes.length;i++){ var curr = elem.attributes[i]; c.setAttribute(curr.name,curr.value); } } return c; } function addChild(par,enf){ if(enf.childNodes.length > 0){ var tmpe = new Array(); while(enf.childNodes.length > 0){ var elem = enf.removeChild(enf.firstChild); tmpe.push(elem); } if(enf.parentNode){ var epar = enf.parentNode; var el = epar.removeChild(enf); par.appendChild(clone(el)); } else par.appendChild(clone(enf)); var cmpt=0; while(tmpe.length>0){ this.addChild(par.lastChild,tmpe.shift()); cmpt++; } } else{ par.appendChild(clone(enf)); } }
Voila pour moi l'erreur se situe dans la fonoction addchild() mais je ne suis pas sur..![]()
Merci d'avance
![]()
Partager