|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
一般的Windows环境(Windows 98 SE以上版本)都有一个MSXML环境,以下的asp代码可以运行,但不一定工作,不工作可能是由于样式单是http: //www.w3.org/1999/XSL/Transform的,而最初环境只支持http://www.w3.org/TR/WD-xsl,所以可能什么也不出来。 <%@ LANGUAGE = JScript %> <% // Set the source and style sheet locations here var sourceFile = Server.MapPath("test.xml"); var styleFile = Server.MapPath("test.xsl"); // Load the XML var source = Server.CreateObject("Microsoft.XMLDOM"); source.async = false; source.load(sourceFile); // Load the XSL var style = Server.CreateObject("Microsoft.XMLDOM"); style.async = false; style.load(styleFile); Response.Write(source.transformNode(style)); %> 一般以MSXML为开发环境的都要建立安装新的解析器,如MSXML 3或者MSXML 4 Technology Preview, 在以replace方法装了MSXML 3后,我们可以使用以下的代码 <%@ LANGUAGE = JScript %> <% // Set the source and style sheet locations here var sourceFile = Server.MapPath("test.xml"); var styleFile = Server.MapPath("test.xsl"); // Load the XML var source = Server.CreateObject("Msxml2.DOMDocument"); source.async = false; source.load(sourceFile); // Load the XSL var style = Server.CreateObject("Msxml2.DOMDocument"); style.async = false; style.load(styleFile); Response.Write(source.transformNode(style)); %> 这样我们获得了MSXML 3的开发环境,但假如我们不想破坏原来的环境,又要测试我们基于MSXML 3的例子呢,虽然用replace方法安装提供了向后兼容方法来支持XSL元素,函数和XSL命名空间。 其实使用版本无关progIDs(version-dependent progIDs)来创建对象实例可以更好的完成工作,我们不需要用replace方法安装,用side-by-side方法即可,我们看下面的代码: <%@ LANGUAGE = JScript %> <% // Set the source and style sheet locations here var sourceFile = Server.MapPath("test.xml"); var styleFile = Server.MapPath("test.xsl"); // Load the XML var source = Server.CreateObject("Msxml2.DOMDocument.3.0"); source.async = false; source.load(sourceFile); // Load the XSL var style = Server.CreateObject("Msxml2.DOMDocument.3.0"); style.async = false; style.load(styleFile); Response.Write(source.transformNode(style)); %> 只需要在Msxml2.DOMDocument后面加上版本号3.0,即可使用MSXML 3的东东了,MSXML 4呢,依次类推。 在客户端的环境也是相同的,用js创建DOM对象是相同的。 function test(){ var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0"); var currNode; xmlDoc.async = false; xmlDoc.load("test.xml"); currNode = xmlDoc.documentElement.firstChild; alert(currNode.xml); } 最后,XSLT样式单side-by-side方法下在Internet Explorer 5.0及以后版本不支持。假如你要使用IE 5来打开XSLT样式单,需要用replace方法安装。 返回类别: 教程 上一教程: ASP OBJECT之:WRITE 下一教程: 怎样在ASP里面创建统计图表 您可以阅读与"建立MSXML 测试环境"相关的教程: · ASP中DLL的调试环境配置全攻略 · 用模板建立动态ASP页 · 通过ASP与ACCESS数据库建立连接(附源码)(1) · ASP环境下邮件列表功能的实现 (一) · 利用索引服务和ASP建立面向整个网站搜索程序 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |