Bonjour,

J'ai une fonction javascript qui devrait me fabriquer une page HTML à partir d'un fichier XML, une feuille de style et MSXML :
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
function loadXmlFile(Fname,xsl,tab_param) {
	var xmlDoc = new ActiveXObject("MSXML2.FreeThreadedDOMDocument.5.0");
	var xslDoc = new ActiveXObject("MSXML2.FreeThreadedDOMDocument.5.0");
	var xslt = new ActiveXObject("MSXML2.XSLTemplate.5.0");
	var xslProc;
	var compo;
	xslDoc.async = false;
	xslDoc.resolveExternals = false;
 
	xslDoc.load(xsl);
 
	if (xslDoc.parseError.errorCode != 0) {
		var myErr = xslDoc.parseError;
		alert("Erreur (chgt. xsl) "  + myErr.reason);
	}
	else {
		alert( Fname + " " + xsl + " " + tab_param );
		xslt.stylesheet = xslDoc;
		xmlDoc.async = false;
		xmlDoc.resolveExternals = false;
		xmlDoc.validateOnParse="false";
		xmlDoc.load(Fname);
 
		if (xmlDoc.parseError.errorCode != 0) {
	  		var myErr = xmlDoc.parseError;
	  		alert("You have error " + myErr.reason);
		}
		else {
	  		xslProc = xslt.createProcessor();
          	var i=0;
          	var ln=tab_param.length;
          	for(i=0;i<ln;i++) {
	      		xslProc.addParameter(tab_param[i][0],tab_param[i][1]);
	      	}
	  		xslProc.input = xmlDoc;
	alert("TRANSFORMER");
	  		xslProc.transform();
	  		return xslProc.output.replace(/UTF-16/gi,"ISO-8859-1");
	  	}
	}
}
Le problème que je rencontre est que la page HTML ne s'affiche pas.

En utilisant un script batch et SAXON j'obtiens une page HTML.

Si j'utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
"MSXML2.FreeThreadedDOMDocument.3.0"
je n'obtiens que le fichier XML sans les balises.

Quelqu'un peut il m'aider ?

Merci