`

Google Ajaxslt 使用

 
阅读更多
类似插件:
jquery.xslt http://hyperthunk.github.io/jquery.xslt/
jquery xslt plugin: http://www.jongma.org/webtools/jquery/xslt/

http://book.51cto.com/art/200805/72637.htm
a.xml
<?xml version="1.0" encoding="UTF-8"?>
<articles>
<article>
<author>author1</author>
<title>title1</title>
<date>2005-2-25</date>
<content><![CDATA[hello
klfkdlskdf
dkfldksdfsd]]></content>
</article>
<article>
<author>author1</author>
<title>title1</title>
<date>2005-2-25</date>
<content><![CDATA[hello
klfkdlskdf
dkfldksdfsd]]></content>
</article>
<article>
<author>author1</author>
<title>title1</title>
<date>2005-2-25</date>
<content><![CDATA[hello
klfkdlskdf
dkfldksdfsd]]></content>
</article>
<article>
<author>author1</author>
<title>title1</title>
<date>2005-2-25</date>
<content><![CDATA[hello
klfkdlskdf
dkfldksdfsd]]></content>
</article>
<article>
<author>author1</author>
<title>title1</title>
<date>2005-2-25</date>
<content><![CDATA[hello
klfkdlskdf
dkfldksdfsd]]></content>
</article>
</articles>


a.xslt
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>test</title>
</head>
<body>
<table border="1">
<tbody>
<tr>
<th>author</th>
<th>title</th>
<th>date</th>
</tr>
<xsl:for-each select="/articles/article">
<tr>
<td>
<xsl:value-of select="author"/>
</td>
<td>
<xsl:value-of select="title"/>
</td>
<td>
<xsl:value-of select="date"/>
</td>
</tr>
</xsl:for-each>
</tbody>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>



转换
来自Google公司的google ajaxslt,它是基于JavaScript实现的,适用于任何浏览器,并且还有比较实用的日志和调试功能。
<script src="misc.js" type="text/javascript"></script>
<script src="dom.js" type="text/javascript"></script>
<script src="xpath.js" type="text/javascript"></script>
<script src="xslt.js" type="text/javascript"></script>
function test_xslt()
{
var strXml = getXml("a.xml");
var strXsl = getXml("a.xslt");
var xml = xmlParse(strXml);
var xslt = xmlParse(strXsl);
var html = xsltProcess(xml, xslt);
return html;
}



结果
<html>
<head>
<title>test</title>
</head>
<body>
<table border="1">
<tbody>
<tr>
<th>author</th>
<th>title</th>
<th>date</th>
</tr>
<tr>
<td>author1</td>
<td>title1</td>
<td>2005-2-25</td>
</tr>
<tr>
<td>author1</td>
<td>title1</td>
<td>2005-2-25</td>
</tr>
<tr>
<td>author1</td>
<td>title1</td>
<td>2005-2-25</td>
</tr>
<tr>
<td>author1</td>
<td>title1</td>
<td>2005-2-25</td>
</tr>
<tr>
<td>author1</td>
<td>title1</td>
<td>2005-2-25</td>
</tr>
</tbody>
</table>
</body>
</html>

也可以在a.xml的第2行增加一句XSLT样式表声明,如下:
<?xml-stylesheet type="text/xsl" href="a.xslt"?>
这样就可以在IE浏览器中查看到效果了
分享到:
评论

相关推荐

    Google AJAXSLT

    **Google AJAXSLT** 是一个由Google开发的JavaScript库,专为在Web浏览器环境中执行XSLT转换(XSL Transformations)和XPath查询而设计。XSLT是一种强大的XML转换语言,它允许开发者将XML数据转换成其他格式,如HTML...

    ajaxslt脚本库 google ajaxslt

    3. **调用Ajaxslt函数**:使用Ajaxslt提供的API,如`Ajaxslt.transformXML`,传入XML和XSLT作为参数,执行转换。 4. **处理结果**:转换后的结果通常是一个字符串,可以将其插入到DOM中或者进行其他操作。 **浏览器...

    google-ajaxslt-开源

    **标题:“Google AJAXSLT-开源”** **正文:** AJAXSLT是一个创新的开源项目,它在JavaScript环境中实现了XSL-T(XSL Transformations)标准,这为Web开发人员提供了一种在客户端处理XML数据的新方法。XSL-T是一...

    googleajax

    Google在其一系列项目中广泛使用了Ajax技术,并为开发者提供了两个关键的JavaScript库——gQuery和Closure Library。 - **gQuery**:虽然不是Google官方维护,但gQuery是对jQuery的一个致敬,它借鉴了jQuery的设计...

    Ajax基础教程(扫描版)

    b.1.6 google ajaxslt 249 b.1.7 libxmlrequest 249 b.1.8 rslite 250 b.1.9 sack 250 b.1.10 sarrisa 250 b.1.11 xhconn 251 b.2 服务器端框架 251 b.2.1 cpaint 251 b.2.2 sajax 251 b.2.3 ...

    javascript-xpath-latest.js

    使用了javascript库,默认使用的是ajaxslt,这个会比较慢,可以换成 javascript-xpath, 虽然比firefox还是慢,但也快多了,上面的例子只需要不 到1秒。换法很简单,如下: selenium = new DefaultSelenium...

    关于Ajax的架构介绍及解决方案

    - **Google AJAXSLT**: 支持在浏览器端执行XSLT转换和XPath查询,增强了Ajax的数据处理能力。 - **HtmlHttpRequest**: 提供更好的XMLHttpRequest和Iframe兼容性。 - **交互式网站框架**: 一个全面支持Ajax基础设施...

Global site tag (gtag.js) - Google Analytics