`
happmaoo
  • 浏览: 4337960 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

利用客户端XSLT样式表转换xml文档

阅读更多
function StorePage() { d=document; t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():''); void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes')); keyit.focus(); }

利用客户端XSLT样式表转换xml文档

源xml文档和那两个xslt样式表我没有提供哦,大家自己写写算了

<html>
<head>
<style type="text/css">
body {font-family:Tahoma,Verdana,Arial,sans-serif; font-size:14px}
.head {font-family:Tahoma,Verdana,Arial,sans-serif; font-size:18px; font-weight:bold}
</style>

<script language="JScript">
<!--

function transformFiles(strStylesheetName) {

// 获取显示转换结果数据层
var objResults = document.all['divResults'];

// 创建两个对象
var objXML = new ActiveXObject('MSXML2.DOMDocument.3.0');
var objXSL = new ActiveXObject('MSXML2.DOMDocument.3.0');

// 设置两个属性
objXML.validateOnParse = true;
objXSL.validateOnParse = true;

// 加载xml文档并且检查错误
objXML.load('tables_data.xml');
if (objXML.parseError.errorCode != 0) {
// 如果有错误九终止运行并且显示错误
objResults.innerHTML = showError(objXML)
return false;
}

// 加载样式表并检查错误
objXSL.load(strStylesheetName);
if (objXSL.parseError.errorCode != 0) {
// 如果有错误就显示错误并终止程序
objResults.innerHTML = showError(objXSL)
return false;
}

// 如果没有错误,就执行转换
strResult = objXML.transformNode(objXSL);

// 在显示结果层显示转换结果
objResults.innerHTML = strResult;
return true;
}

function showError(objDocument) {
// 创建错误消息
var strError = new String;
strError = 'Invalid XML file !<BR />'
+ 'File URL: ' + objDocument.parseError.url + '<BR />'
+ 'Line No.: ' + objDocument.parseError.line + '<BR />'
+ 'Character: ' + objDocument.parseError.linepos + '<BR />'
+ 'File Position: ' + objDocument.parseError.filepos + '<BR />'
+ 'Source Text: ' + objDocument.parseError.srcText + '<BR />'
+ 'Error Code: ' + objDocument.parseError.errorCode + '<BR />'
+ 'Description: ' + objDocument.parseError.reason
return strError;
}

//-->
</script>

</head>
<body onload="transformFiles('tables_list.xsl')">
<p><span class="head">利用客户端XSLT样式表转换xml文档</span></p>
查看详细 &nbsp; <button onclick="transformFiles('tables_catalog.xsl')">目录</button>
&nbsp; 或者 &nbsp; <button onclick="transformFiles('tables_list.xsl')">简单列表</button>
<hr />

<!-- 这个层里插入xml和xslt的转换结果 -->
<div id="divResults"></div>

</body>
</html>

分享到:
评论

相关推荐

    xslt-for-ogc-services:用于将 OGC 服务响应(如 GetCapabilities)转换为人类可读格式的 XSLT 样式表

    幸运的是,现代浏览器支持 XSLT 样式表,它可以转换 XML 文档。 如果您使用这些样式表,您可以将元数据转换为网站等。 我们以这种方式提供的文档页面将显示服务所需的最重要设置,以及用于预览服务的简单地图客户端...

    xml入门经典-part3(中文版)

    8.6.4 使用Xpath和XSLT查询XML文档 8.6.5 查询语言展望 8.7 小结 第9章 转换 XML 9.1 为什么转换 XML 9.1.1 在不同词汇表之间转换 9.1.2 动态转换 9.1.3 不同的浏览器 9.2 XSL 9.3 XSLT 样式表结构 9.3.1 ...

    XML高级编程pdf

    8.6.4 使用Xpath和XSLT查询XML文档 8.6.5 查询语言展望 8.7 小结 第9章 转换 XML 9.1 为什么转换 XML 9.1.1 在不同词汇表之间转换 9.1.2 动态转换 9.1.3 不同的浏览器 9.2 XSL 9.3 XSLT 样式表结构 9.3.1 ...

    XML 高级编程(高清版)

    8.6.4 使用Xpath和XSLT查询XML文档 8.6.5 查询语言展望 8.7 小结 第9章 转换 XML 9.1 为什么转换 XML 9.1.1 在不同词汇表之间转换 9.1.2 动态转换 9.1.3 不同的浏览器 9.2 XSL 9.3 XSLT 样式表结构 9.3.1 ...

    XML高级编程 (Extensible Markup Language)

    8.6.4 使用Xpath和XSLT查询XML文档 8.6.5 查询语言展望 8.7 小结 第9章 转换 XML 9.1 为什么转换 XML 9.1.1 在不同词汇表之间转换 9.1.2 动态转换 9.1.3 不同的浏览器 9.2 XSL 9.3 XSLT 样式表结构 9.3.1 ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    1.8.1 在xml文档中引入dtd 18 1.8.2 dtd的结构 21 1.9 有效的xml 35 1.10 xml处理器/解析器 35 1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    1.8.1 在xml文档中引入dtd 18 1.8.2 dtd的结构 21 1.9 有效的xml 35 1.10 xml处理器/解析器 35 1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    1.8.1 在xml文档中引入dtd 18 1.8.2 dtd的结构 21 1.9 有效的xml 35 1.10 xml处理器/解析器 35 1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称...

    XML高级编程

    8.6.4 使用Xpath和XSLT查询XML文档 298 8.6.5 查询语言展望 309 8.7 小结 309 第9章 转换 XML 310 9.1 为什么转换 XML 311 9.1.1 在不同词汇表之间转换 311 9.1.2 动态转换 312 9.1.3 不同的浏览器 312 9.2 XSL 313 ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    1.8.1 在xml文档中引入dtd 18 1.8.2 dtd的结构 21 1.9 有效的xml 35 1.10 xml处理器/解析器 35 1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称...

    Java数据库编程宝典2

    15.2.3 使用XSL样式表转换XML 15.2.4 在JSP页面中使用XSL转换 15.3 使用具有XSL样式表的可更新ResultSet 15.4 小结 第16章 使用JDBC驱动的JavaMail API 16.1 使用电子邮件协议 16.1.1 MIME协议 16.1.2 ...

    Java数据库编程宝典4

    15.2.3 使用XSL样式表转换XML 15.2.4 在JSP页面中使用XSL转换 15.3 使用具有XSL样式表的可更新ResultSet 15.4 小结 第16章 使用JDBC驱动的JavaMail API 16.1 使用电子邮件协议 16.1.1 MIME协议 16.1.2 ...

    Java数据库编程宝典1

    15.2.3 使用XSL样式表转换XML 15.2.4 在JSP页面中使用XSL转换 15.3 使用具有XSL样式表的可更新ResultSet 15.4 小结 第16章 使用JDBC驱动的JavaMail API 16.1 使用电子邮件协议 16.1.1 MIME协议 16.1.2 ...

    Java数据库编程宝典3

    15.2.3 使用XSL样式表转换XML 15.2.4 在JSP页面中使用XSL转换 15.3 使用具有XSL样式表的可更新ResultSet 15.4 小结 第16章 使用JDBC驱动的JavaMail API 16.1 使用电子邮件协议 16.1.1 MIME协议 16.1.2 ...

    AJAX基础概念、核心技术与典型案例(内涵动态实例)

    13.4.htm 直接对XML文档进行添加、删除和显示数据的操作 13.5.js Mozilla 浏览器中xml的应用 13.5.xml 简单的xml文件 13.6.htm 格式化输出xml文件 13.7.htm 一个添加/删除...

    asp.net知识库

    Asp.Net(C#)利用XPath解析XML文档示例 XSL .Net框架下的XSLT转换技术简介 一个XSLT的简单例子 XSLXSLT板主题整理 xsl入门的好文章 新手学习XSL的好东西 XSL语法介绍 XSL学习心得 - 调用属性值 XSLT与XML转换的详细...

Global site tag (gtag.js) - Google Analytics