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

Javascript XSLT 处理XML文件(IE and Firefox)

    博客分类:
  • HTML
阅读更多

    javascript xslt 处理xml备忘录。支持firefox。
参考:
w3school XSLT - 客户端 http://www.w3school.com.cn/xsl/xsl_client.asp
如何使用Javascript XSLT 处理XML文件 http://java.chinaitlab.com/advance/533787.html

1.xml文件,cdcatalog.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited with XML Spy v2007 (http://www.altova.com) -->
<catalog>
    
<cd>
        
<title>Empire Burlesque</title>
        
<artist>Bob Dylan</artist>
        
<country>USA</country>
        
<company>Columbia</company>
        
<price>10.90</price>
        
<year>1985</year>
    
</cd>
    
<cd>
        
<title>Hide your heart</title>
        
<artist>Bonnie Tyler</artist>
        
<country>UK</country>
        
<company>CBS Records</company>
        
<price>9.90</price>
        
<year>1988</year>
    
</cd>
</catalog>


2.xsl文件,cdcatalog.xsl

<!----><?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited with XML Spy v2007 (http://www.altova.com) -->
<xsl:stylesheet version="1.0"
xmlns:xsl
="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='html' version='1.0' encoding='UTF-8' indent='yes'/>

<xsl:template match="/">
  
<html>
  
<body>
  
<h2>My CD Collection</h2>
    
<table border="1">
      
<tr bgcolor="#9acd32">
        
<th align="left">Title</th>
        
<th align="left">Artist</th>
      
</tr>
      
<xsl:for-each select="catalog/cd">
      
<tr>
        
<td><xsl:value-of select="title"/></td>
        
<td><xsl:value-of select="artist"/></td>
      
</tr>
      
</xsl:for-each>
    
</table>
  
</body>
  
</html>
</xsl:template>
</xsl:stylesheet>



3.html文件,index.html

<!----><html>
<body>

<script type="text/javascript">
var xml;
var xsl;
if(typeof window.ActiveXObject != 'undefined') {
    xml 
= new ActiveXObject("Microsoft.XMLDOM");
    xsl 
= new ActiveXObject("Microsoft.XMLDOM");
else if(document.implementation && document.implementation.createDocument) {    //mozilla
    xml = document.implementation.createDocument(""""null);
    xsl 
= document.implementation.createDocument(""""null);
}
// Load XML 

xml.async 
= false;
xml.load(
"cdcatalog.xml");

// Load XSL

xsl.async 
= false;
xsl.load(
"cdcatalog.xsl");

// Transform

if(typeof window.ActiveXObject != 'undefined') {
    document.write(xml.transformNode(xsl));
else if(document.implementation && document.implementation.createDocument) {    //mozilla
    var xsltProcessor = new XSLTProcessor();
    xsltProcessor.importStylesheet(xsl);
    
// transformToDocument方式
    var result = xsltProcessor.transformToDocument(xml);
    
var xmls = new XMLSerializer();
    document.write(xmls.serializeToString(result));
}

</script>

</body>
</html>


分享到:
评论

相关推荐

    兼容Firefox的Javascript XSLT 处理XML文件

    本文主要讨论如何在Firefox浏览器中使用JavaScript和XSLT来处理XML文件,以及与IE浏览器的兼容性问题。 一、XSLTProcessor对象 在Firefox浏览器中,可以使用XSLTProcessor对象来执行XSLT转换。XSLTProcessor对象...

    xslt资料大全(xslt扩展函数)

    xslt手册.chm java实现xslt 简单的 Xalan 扩展函数 - 工程 xslt知识点速查手册.doc 2 Javascript XSLT 处理XML文件(IE and Firefox).doc Saxon 剖析 XSLT 处理器.doc

    Javascript+Xslt解析Xml为Html的方法.pdf

    然而,需要注意的是,ActiveXObject是Internet Explorer特有的,对于其他非IE浏览器(如Firefox、Chrome、Safari等),需要使用不同的方法,如`DOMParser`和`XMLHttpRequest`来实现相同的功能。

    xslt-processor:不带本机库依赖项JavaScript XSLT处理器 开发技术 - 其它.zip

    例如,Internet Explorer使用MSXML,而Firefox和Chrome等现代浏览器使用XPath和XSLT的DOM接口。`xslt-processor`项目旨在提供一个统一且独立于平台的解决方案,这对于跨平台和跨浏览器的Web开发至关重要。 这个项目...

    AJAX(Asynchronous JavaScript and XML)技术

    ### AJAX(Asynchronous JavaScript and XML)技术 #### 定义与概述 AJAX,全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种用于创建交互式网页应用的网页开发技术。它允许网页在无需...

    XML提问时的的的的的的附件

    在您的问题中,您遇到了一个特定的问题:XML数据可以在Internet Explorer(IE)中正常显示,但在Firefox(FF)中无法显示。这通常涉及到浏览器对XML文档的解析方式的差异以及可能的兼容性问题。 首先,让我们了解...

    firefox 浏览器结构分析

    因此,Firefox内置了一个XML解析器,用于处理XML文档和XSLT转换等任务。 ##### 3.8 显示后端(Display Backend) 显示后端是负责图形渲染的部分,根据不同的操作系统平台,Firefox会使用不同的显示后端组件。例如,...

    sql+xml+firefox

    标题中的"sql+xml+firefox"表明我们关注的是SQL(结构化查询语言)、XML(可扩展标记语言)以及Firefox浏览器这三者的技术知识。下面将分别详细介绍这三个领域的关键知识点。 **SQL(结构化查询语言)** SQL是用于...

    Mozilla Firefox 支持数据岛

    通过研究和优化数据岛的实现,Firefox旨在提供一个与XML数据交互的统一、高效的方式,以便开发者能够编写兼容更多浏览器的代码。 在实现数据岛的过程中,可能涉及到的技术包括: 1. **XMLHttpRequest**:用于异步从...

    Mozilla Firefox 支持数据岛(第二版)

    XMLDataSource.js很可能是一个JavaScript库,用于处理Firefox中的数据岛交互,可能是通过DOM(Document Object Model)接口来实现的。DOM允许JavaScript代码动态地访问和修改HTML或XML文档的结构,因此可以方便地将...

    Gecko DOM Reference(Firefox DOM参考手册)

    5. **XML和XSLT支持**:如果适用,会涵盖Firefox对XML和XSLT的支持。 6. **异步加载和Mutation Observers**:讲解如何处理异步内容加载和检测DOM的变化。 7. **Web Components**:如果Firefox支持,会介绍自定义元素...

    firefox下溢出部分省略号显示

    `test.htm`可能是一个包含上述CSS样式的HTML文件,而`ellipsis.xml`可能与XML格式的数据有关,虽然XML通常不直接用于样式,但它可能包含了要显示的文本数据,这些数据可能会在JavaScript或者XSLT中被处理,然后应用...

    火狐浏览器安装文件-FirefoxSetup_ZH_3.0.8

    Firefox 3.0.8在当时提供了对HTML、CSS、JavaScript、XML以及XSLT等网页语言的良好支持,并且对Web标准的遵循程度较高,这使得网页在火狐上呈现得更加准确和一致。 安全性是Firefox的另一大亮点。它内置了沙盒机制...

    firefox5+firebug1.8+xpath_checker0.4.4

    这对于处理XML数据,特别是在编写自动化脚本或调试XSLT转换时,是非常有用的工具。 综上所述,这个组合为开发者提供了一套完整的网页开发和调试环境。Firefox 5作为基础浏览器,Firebug 1.8作为强大的调试工具,...

    XML之数据岛

    5. **局限性**:XML数据岛主要是微软IE浏览器支持的功能,对于其他非IE浏览器,如Firefox、Chrome等,可能需要使用其他方法,如JSON,来实现类似的功能。随着现代Web开发标准的发展,XML数据岛的使用已经逐渐减少,...

    Ajax完全自学手册(PPT)

    Test Firefox XMl DOm.htm Firefox中的XML DOM支持 Firefox LoadXML.htm Firefox中的XML DOM支持 XPath Example1.xml XPath Writer.xml 开发中实际使用的XML文档 Test4IE XPath.htm IE中的XPath支持 Test ...

    ajaxslt脚本库 google ajaxslt

    它解决了在不支持ActiveX控件的浏览器中进行XSLT转换的问题,这通常是Internet Explorer之外的浏览器如Firefox、Chrome、Safari等面临的挑战。 **XSLT基础** XSLT是一种W3C推荐的转换XML文档的语言,它允许开发者...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    XML越来越热,关于XML的基础教程网络上也随处可见。可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。...

    Ajax完全自学手册PPT和源代码(ptt格式)

    Test Firefox XMl DOm.htm Firefox中的XML DOM支持 Firefox LoadXML.htm Firefox中的XML DOM支持 XPath Example1.xml XPath Writer.xml 开发中实际使用的XML文档 Test4IE XPath.htm IE中的XPath支持 Test Firefox ...

Global site tag (gtag.js) - Google Analytics