-
Notifications
You must be signed in to change notification settings - Fork 0
/
Example1-XSLT-javascript.html
60 lines (47 loc) · 1.29 KB
/
Example1-XSLT-javascript.html
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
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>XSLT</title>
</head>
<body>
<div id="example"></div>
<script type="text/javascript">
(function(){
if (!('XSLTProcessor' in window)) {
console.log('XSLTProcessor does not appear to be available in this browser. Please try another.');
return;
}else{
console.log('XSLTProcessor available.');
}
const xsltProcessor = new XSLTProcessor();
const xslRequest = new XMLHttpRequest();
//true as third parameter indicates asynchronous request
xslRequest.open("GET", "data/example.xsl", true);
xslRequest.addEventListener("load", function() {
if(xslRequest.readyState == 4){
if (xslRequest.status == 200){
const xslDoc = xslRequest.responseXML;
xsltProcessor.importStylesheet(xslDoc);
}
}
});
xslRequest.send(null);
// load the XML file
const xmlRequest = new XMLHttpRequest();
//true as third parameter indicates asynchronous request
xmlRequest.open("GET", "data/example.xml", true);
xmlRequest.addEventListener("load", function() {
if(xmlRequest.readyState == 4){
if (xmlRequest.status == 200){
const xmlDoc = xmlRequest.responseXML;
const fragment = xsltProcessor.transformToFragment(xmlDoc, document);
document.getElementById("example").appendChild(fragment);
}
}
});
xmlRequest.send(null);
})();
</script>
</body>
</html>