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

博客介绍了利用客户端XSLT样式表转换xml文档的方法。通过创建对象、设置属性、加载文档和样式表,检查错误后执行转换,并在页面显示结果。还给出了错误处理函数,方便在出现错误时显示详细信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值