Bonjour,
voilà, je cherche à charger 2 div différentes à l'aide d'un XMLhttpRequest : récupération de widgets...
j'ai donc fait des jolies fonctions qui marchent très bien si je n'en appelle qu'une seule (1 fonction par widget) : voici le code du fichier JS
quand j'appelle les 2 fonctions (loadSuccessArticles et loadNoteArticles) l'une après l'autre, rien ne se passe. alors que quand j'en appelle 1 seule, elle s'exécute bien.
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
40
41
42
43
44
45
46
47
48
49
50
51
52 var oXMLHttpRequest; var sourceHTMLurl_Success = '/include/ajax/getSuccessArticle.asp'; var sourceHTMLurl_Note = '/include/ajax/getSuccessArticle.asp'; var DIVtoDisplay; var URLtoRead; var HTMLtoDisplay; if (window.XMLHttpRequest) {// branch for Netscape and FireFox oXMLHttpRequest = new XMLHttpRequest(); } else if (window.ActiveXObject) {// branch for IE oXMLHttpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } else {// XMLHttpRequest non supporté par le navigateur } function loadNoteArticles(pNumber, pIsCA, pIsOS, pPer, pDIV){ URLtoRead = sourceHTMLurl_Note + '?number='+pNumber+'&isCA='+pIsCA+'&isOS='+pIsOS+'per='+pPer; DIVtoDisplay = pDIV; try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");}catch (e) {} //on libère l'objet XmlHttpRequest if (oXMLHttpRequest){oXMLHttpRequest.abort();} oXMLHttpRequest.onreadystatechange = LoadXMLDivUpdate; oXMLHttpRequest.open("GET", URLtoRead, true); oXMLHttpRequest.send(null); } function loadSuccessArticles(pNumber, pIsCA, pIsOS, pDIV){ URLtoRead = sourceHTMLurl_Success + '?number='+pNumber+'&isCA='+pIsCA+'&isOS='+pIsOS; DIVtoDisplay = pDIV; try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");}catch (e) {} //on libère l'objet XmlHttpRequest if (oXMLHttpRequest){oXMLHttpRequest.abort();} oXMLHttpRequest.onreadystatechange = LoadXMLDivUpdate; oXMLHttpRequest.open("GET", URLtoRead, true); oXMLHttpRequest.send(null); } function LoadXMLDivUpdate(){ //alert(URLtoRead); //alert(DIVtoDisplay); if (oXMLHttpRequest.readyState == 4) {// only if req shows "loaded" if (oXMLHttpRequest.status == 200) {// only if "OK" doDivUpdate(); } } } function doDivUpdate(){ // au final, je récupère du HTML et pas du XML document.getElementById(DIVtoDisplay).innerHTML=oXMLHttpRequest.responseText; }
j'ai essayé en nommant les objet XMLhttpRequest avec des noms différents, mais ça ne change rien.
quel wagon aurais-je loupé ?
de plus, j'aimerais faire les appels à mes fonctions en dehors du <Body onLoad="">, mais cela ne marche pas dans ce cas... une solution ?
merci de votre aide.
Partager