Bonjour,
Je m'excuse d'avance si cette question avait déjà été posée dans un autre forum. Après une recherche rapide je n'en ai pas trouvé trace.
Voici mon problème:
Dans le cadre de la migration d'une application web de IE vers Chrome, je suis dans l'incapacité de faire une transformation XML/XSLT pour trier les données d'un tableau.
Pourtant sous IE la méthode "transformNode(xslt)" fonctionne très bien mais sous Chrome impossible d'obtenir un résultat malgré redéfinition.
Voici le code:
Code javascript : 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 function loadXMLFile(filename) { var ret = null; $.ajax({ //jquery type: "GET", url: filename, dataType: "xml", data:null, contentType: "text/xml", async: false, error: function(XMLHttpRequest, textStatus, errorThrown) { showMessage('loadXMLFile : ' + filename + ' --> error = ' + textStatus); return null; }, success: function(xml){ var node = xml.documentElement; ret = (node.length == 0) ? null : node; } }); return ret; } Document.prototype.transformNode = function(xslt) { /*Test Of the Chrome XSLT transformation*/ var xml=loadXMLFile("racatrier.xml"); var xsl=loadXMLFile("racatrier.xsl"); var xsltProcessor = null; var resultDocument = null; if (document.implementation && document.implementation.createDocument) { xsltProcessor=new XSLTProcessor(); xsltProcessor.importStylesheet(xsl); resultDocument = xsltProcessor.transformToFragment(xml,document); return resultDocument ; } };
Ayant surchargé la méthode "transformNode(xslt)" pour émulation celle-ci retourne pas le bon XML trié. Le plus curieux, un outil de validation en ligne qui fait la transformation niveau serveur pas de problème.
Partager