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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
| <html>
<head>
<title>Transformation XSLT</title>
<script type="text/javascript">
function loadXML(url)
{
var xmlDoc;
/* chargement du fichier XML */
try {
// navigateur basé sur Gecko
if (document.implementation && document.implementation.createDocument)
{
xmlDoc = document.implementation.createDocument('', '', null);
xmlDoc.load(url);
// ActiveX pour Internet Explorer
} else if (window.ActiveXObject) {
try {
xmlDoc = new ActiveXObject('Msxml2.XMLDOM');
} catch (e) {
xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
}
xmlDoc.async = false;
xmlDoc.load(url);
// à l'aide de lobjet XMLHTTPRequest
} else if (window.XMLHttpRequest) {
xmlDoc = new XMLHttpRequest();
xmlDoc.overrideMimeType('text/xml');
xmlDoc.open('GET', url, false);
xmlDoc.send(null);
if (this.xmlDoc.readyState == 4) xmlDoc = xmlDoc.responseXML;
}
} catch (e) {
return e;
}
return xmlDoc;
}
function transform(xml, xsl, place)
{
//try {
// navigateur basé sur Gecko
if (window.XSLTProcessor)
{
var fragment;
var xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(xsl);
xsltProcessor.setParameter(null, "rank", "2");
fragment = xsltProcessor.transformToFragment(xml, document);
document.getElementById(place).appendChild(fragment);
// ActiveX pour Internet Explorer
} else if (window.ActiveXObject) {
var target = document.getElementById(place);
target.innerHTML = xml.transformNode(xsl);
}
//} catch (e) {
// return e;
//}
}
var XmlURL = '1.xml';
var XslURL = '1.xsl';
var Xsl2URL = '2.xsl';
var xml = loadXML(XmlURL);
var xsl = loadXML(XslURL);
var xsl2 = loadXML(Xsl2URL);
window.onload = function() {
transform(xml, xsl, 'transform');
transform(xml, xsl2, 'transform2')
}
</script>
</head>
<body>
<div id="transform2">
<!-- c'est ici que ce fait la transformation -->
</div>
<div id="transform">
<!-- c'est ici que ce fait la transformation -->
</div>
</body>
</html> |
Partager