利用xslt对xml进行缩进格式化处理

net_lover [原作]

下面就是简单的例子,这里提供2中方法:

test.htm

 1<script>   
 2//装载数据   
 3x = "<r><a name='net_lover'>aaaaaaaaaaa</a> <b>bbbbbbb</b><a>aaaaaaaaaaa</a><b>bbbbbbb</b></r>"   
 4var source = new ActiveXObject("Msxml2.DOMDocument");   
 5source.async = false;   
 6source.loadXML(x)   
 7alert(source.xml) 
 8
 9// 装载样式单   
10var stylesheet = new ActiveXObject("Msxml2.DOMDocument");   
11stylesheet.async = false;   
12stylesheet.resolveExternals = false;   
13stylesheet.load("style.xsl");   
14alert(stylesheet.xml)   
15  
16// 创建结果对象   
17var result = new ActiveXObject("Msxml2.DOMDocument");   
18result.async = false; 
19
20// 把解析结果放到结果对象中方法1   
21source.transformNodeToObject(stylesheet, result);   
22alert(result.xml)   
23  
24// 把解析结果放到结果对象中方法2   
25result2 = ""   
26result2 = source.transformNode(stylesheet);   
27source.loadXML(result2)   
28alert(source.xml)   
29</script>

style.xsl

1<xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform ">
2<xsl:output indent="yes" method="xml" omit-xml-declaration="yes"></xsl:output>
3<xsl:template match="/ | @* | node()">
4<xsl:copy>
5<xsl:apply-templates select="@* | node()"></xsl:apply-templates>
6</xsl:copy>
7</xsl:template>
8</xsl:stylesheet>
Published At
Categories with Web编程
comments powered by Disqus