`

javascript解析xml文件。兼容IE、firefox、Chrome

 
阅读更多

html
<div id="bookList" style="width:500px;">
<script language="javascript">
loadXML = function(fileRoute){
    xmlDoc=null;
     if (window.ActiveXObject){
        xmlDoc = new ActiveXObject('Msxml2.DOMDocument');
        xmlDoc.async=false;
        xmlDoc.load(fileRoute);
    }
    else if (document.implementation && document.implementation.createDocument){
        var xmlhttp = new window.XMLHttpRequest();
        xmlhttp.open("GET",fileRoute,false);
        xmlhttp.send(null);
        var xmlDoc = xmlhttp.responseXML.documentElement; 
    }
    else {xmlDoc=null;}
    return xmlDoc;
}
var xmlDoc=loadXML('books.xml');

var cNodes = xmlDoc.getElementsByTagName("book"); //alert(cNodes.length)
var msg='<table border="1" cellspacing="0" cellpadding="0" width="500">';
msg+='<tr><td width="90"></td><td width="100">图书编号</td><td width="100">种类编号</td><td width="110">图书名称</td><td width="100">作者</td></tr>';
for(j=0;j<cNodes.length;j++)
{
    var bookID=xmlDoc.getElementsByTagName("book")[j].getAttribute("id");
    var sortID=xmlDoc.getElementsByTagName("book")[j].getAttribute("sortID");
    var bookTitle=xmlDoc.getElementsByTagName("title")[j].childNodes[0].nodeValue;
    var bookAuthor=xmlDoc.getElementsByTagName("author")[j].childNodes[0].nodeValue;
    msg+='<tr><td>'+(j+1)+'</td><td>'+bookID+'</td><td width="100">'+sortID+'</td><td width="190">'+bookTitle+'</td><td width="120">'+bookAuthor+'</td></tr>'
}
msg+='</table>';
document.getElementById("bookList").innerHTML=msg;
</script>

.xml
<?xml version="1.0" encoding="gb2312"?>
<books>
<book id="4" sortID="a4">
<title>author4aa</title>
<author>author4</author>
</book>
<book id="5" sortID="a5">
<title>author55</title>
<author>author5</author>
</book>
<book id="6" sortID="a6">
<title>booktitle</title>
<author>author6</author>
</book>
<book id="7" sortID="a7">
<title>booktitle</title>
<author>author7</author>
</book>
</books>

分享到:
评论

相关推荐

    js解析XML文件

    使用 DOMParser 对象可以跨浏览器平台,包括 Firefox 和 Chrome。 ```javascript var str = "&lt;input&gt;11112345&lt;/input&gt;"; var doc = new DOMParser().parseFromString(str, "text/xml"); alert(doc); ``` 使用 ...

    javascript解析xml文件

    1. **DOMParser API**:这是W3C标准的一部分,适用于所有现代浏览器,包括Chrome、Firefox、Safari和Edge等。我们可以创建一个DOMParser实例,然后使用`parseFromString()`方法解析XML字符串。 ```javascript let ...

    JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器

    "JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器"这一技术主题,聚焦于如何使用JavaScript(JS)在各种浏览器环境下处理Excel文件,包括古老的Internet Explorer(IE)、Firefox以及Chrome。下面我们将深入探讨这...

    js操作XML文件(兼容FF,IE)

    本文将详细探讨如何在JavaScript中操作XML文件,并确保代码在Firefox和IE之间具有良好的兼容性。 1. **创建XML对象**: 在JavaScript中,可以使用`ActiveXObject`(仅适用于IE)或`DOMParser`(通用方法)来创建...

    js读取xml文件并获取文件内容

    // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } ``` 2. **打开连接**: - 使用...

    javascript解析xml字符串的函数

    然而,Firefox和其他基于Web标准的浏览器,如Chrome和Safari,不支持ActiveX对象,而是使用`DOMParser`对象的`parseFromString`方法来解析XML字符串: ```javascript var oParser = new DOMParser(); xmlDoc = ...

    JS读取本地XML(支持IE和火狐和Google和Opea)

    对于Firefox、Chrome和Opera这些现代浏览器,它们遵循W3C标准,可以使用`FileReader` API或`fetch` API来读取本地XML文件。需要注意的是,这些浏览器通常不允许直接读取本地文件,除非文件是通过拖放、文件输入控件...

    真正实现ajax上传文件 兼容IE6789火狐谷歌世界之窗

    在现代Web开发中,文件上传是一个常见的功能,但要实现跨浏览器兼容性,尤其是在旧版本的Internet Explorer(如IE6、IE7、IE8、IE9)以及Firefox、Chrome和世界之窗等其他浏览器上,可能面临一些挑战。Ajax上传文件...

    DOM文档和Javascript的IE和Firefox兼容性

    "Javascript的IE和Firefox兼容性"则涉及到JavaScript在不同浏览器中的行为一致性问题。Internet Explorer(IE)和Mozilla Firefox是两个历史悠久且具有广泛用户基础的浏览器,它们对JavaScript的支持存在差异,尤其...

    css下拉菜单示例,兼容ie678,ff,chrome

    本示例主要关注的是使用CSS创建下拉菜单,并确保该菜单在不同的浏览器环境下,如IE6、IE7、IE8、Firefox和Chrome中都能正常工作。这是一项重要的任务,因为不同浏览器可能对CSS的解析和渲染存在差异,需要进行适当的...

    Javascript 操作XML类

    6. **浏览器兼容性**:示例代码使用了ActiveXObject,这是Internet Explorer特有的,对于其他浏览器如Firefox、Chrome、Safari等,需要使用`XMLHttpRequest`的非IE实现。在现代JavaScript开发中,通常会使用`fetch` ...

    JS实现兼容各浏览器解析XML文档数据的方法

    而Chrome和Firefox浏览器则使用XMLHttpRequest对象发送同步请求获取XML文件,并将响应转换为XML DOM对象。 知识点三:浏览器类型判断 为了实现兼容性调整,需要先判断当前浏览器的类型。文章提供了判断浏览器类型的...

    JavaScript_浏览器扩展Firefox Chrome Opera Edge基于regex模式重定向url

    - **Firefox扩展**: Firefox使用WebExtensions API,这是一种与Chrome和Opera兼容的API。我们可以在manifest.json文件中定义`background.js`脚本,然后在该脚本中监听`webNavigation`事件,根据URL重定向规则进行...

    省市县级联XML版(支持FF,Chrome,IE).rar

    这个压缩包特别指出它支持Firefox(FF)、Chrome和Internet Explorer(IE)这三种主流的网络浏览器,意味着其提供的解决方案是跨平台、跨浏览器兼容的。 描述部分提到了“省市级联xml,html,js文件”,这意味着该...

    JS弹出式QQ在线客服插件,支持浏览器IE、FireFox、Chrome、Safari等主流浏览器

    此插件适用于多种浏览器,包括Internet Explorer(IE)、Firefox、Chrome以及Safari,这涵盖了大部分互联网用户的常用浏览环境。 首先,让我们了解一下JavaScript(JS)在其中的作用。JavaScript是一种广泛使用的...

    JS解析XML适用于不用的浏览器

    对于支持XMLHttpRequest(XHR)的现代浏览器(如IE7+、Firefox、Chrome、Safari等),可以使用`XMLHttpRequest`对象的`responseXML`属性来解析XML响应。例如: ```javascript var xhr = new XMLHttpRequest(); xhr....

    javascript+xml树形菜单

    需要注意的是,由于这种方法依赖于 IE 特有的 ActiveXObject,因此在其他浏览器(如 Chrome、Firefox、Safari 或 Edge)中将无法工作。现代浏览器通常使用 AJAX(XMLHttpRequest 或 Fetch API)和 DOM 操作来实现...

    纯js写的java搜索框,无数据库,IE,火狐兼容

    【标题】中的“纯js写的java搜索框,无数据库,IE,火狐兼容”意味着这是一个使用纯JavaScript编写的搜索功能,它不依赖任何后端数据库,并且可以在Internet Explorer(IE)和Firefox这两种不同的浏览器上正常运行...

    firefox xpi

    标题 "Firefox XPI" 指的是 Firefox 扩展(Extension)的安装包格式,它是一种基于 ZIP 压缩的文件系统,用于分发和安装 Firefox 浏览器的插件。XPI 是 "XML-based Package Installer" 的缩写,这种格式允许开发者将...

Global site tag (gtag.js) - Google Analytics