`
shihuaxian
  • 浏览: 2894 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

js解析xml文件完整实例

    博客分类:
  • js
阅读更多
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>JS读取XMLDemo</title>

    <script language="javascript" type="text/javascript">
        function NewInfoAction()
        {
            var dom;
            var type=1;                                         //默认为IE浏览器
            var data = new Array();                             //存储实体的数组 
        
            if(navigator.userAgent.indexOf("MSIE")>0)
            {
                dom = new ActiveXObject("Microsoft.XMLDOM");    //实例化dom对象
                /*
                    这个地方很多朋友不明白,我写详细点
                    设置异步处理
                    本函数不需要在XML文件读取完成之前进行任何操作,
                    因此关闭异步处理功能。
                */
                dom.async = false;                           
                dom.load("NewInfo.xml");                        //加载xml文件
                window.alert('IE');
            }
            else if(isFirefox=navigator.userAgent.indexOf("Firefox") > 0)
            {
                type=2;
                dom = document.implementation.createDocument("", "", null);         //火狐不支持ActiveXObject
                dom.async = false;
                dom.load("NewInfo.xml");
                /*
                    这是火狐的另外一中加载xml的方式
                    var oXmlHttp = new XMLHttpRequest() ;
                    oXmlHttp.open( "GET", "test.xml", false ) ;
                    oXmlHttp.send(null) ;
                    //oXmlHttp.responseXML就是xml对象了。
                */
            }
            else
            {
                window.alert('暂不识别该浏览器!');
                return;
            }       
            if(dom)
            {
                var node;
             
                if(type == 1)   //判断是否为IE浏览器
                {
                    node = dom.documentElement.childNodes;      //这里的node大家可以理解为net中的表,方便大家理解                 
                    for(var i=0;i<node.length;i++)
                    {
                        var title = node[i].childNodes[0].text;                 //取出i行中的字段的值,大家这样理解更方便
                        var content = node[i].childNodes[1].text;
                        var date = node[i].childNodes[2].text;
                        data.push({title:title,content:content,date:date});     //在这里,我们使用使用json,把数据库存储在里面
                    }
                }
                else
                {
                    var node = dom.getElementsByTagName("News");
                    for(var i=0;i<node.length;i++)
                    {
//                        window.alert(dom.getElementsByTagName("News")[i].childNodes[1].textContent);
//                        window.alert(dom.getElementsByTagName("News")[i].childNodes[3].textContent);
//                        window.alert(dom.getElementsByTagName("News")[i].childNodes[5].textContent);

                        var value = dom.getElementsByTagName("News")[i].textContent.split(' ');
                        var title = value[4];
                        var content = value[8];
                        var date = value[12];
                        data.push({title:title,content:content,date:date});     //在这里,我们使用使用json,把数据库存储在里面
                    }
                }
            }
            else
            {
                window.alert("dom对象为空,失败了!");
                return;
            }         
            if(data.length != 0)
            {
                var shtml = '';
                for(var i=0;i<data.length;i++)
                {
                    shtml += '<div>';
                    shtml += '<div style="float:left; background-color:Red; width:80px; height:15px">';
                    shtml += data[i].title;
                    shtml += '</div>';
                    shtml += '<div>';
                    shtml += '<div style="float:left; background-color:Green;width:150px; height:15px">';
                    shtml += data[i].content;
                    shtml += '</div>';
                    shtml += '<div style="float:left; background-color:yellow;width:120px; height:15px">';
                    shtml += data[i].date;
                    shtml += '</div>';
                    shtml += '</div>';
                    shtml += '</div>';
                    shtml += '<br/>';
                }
                document.getElementById('textDiv').innerHTML = shtml;
            }
            else
            {
                document.getElementById('textDiv').innerHTML = '没有信息!';
            }
        }
    </script>
</head>
<body onload="NewInfoAction()">
<div id="textDiv" >
</div>
</body>
</html>
0
0
分享到:
评论

相关推荐

    利用MSXML解析xml文件实例

    本实例将详细介绍如何利用Microsoft的MSXML库来解析XML文件。 MSXML,全称为Microsoft XML Core Services,是微软提供的一套用于处理XML文档的COM组件。它提供了多种接口,如IXMLDOMDocument,IXMLDOMNode等,供...

    解析xml文件文档+实例+配置

    3. 解析XML配置文件时,需要关注特定的根元素、属性以及可能的命名空间声明。 五、XML解析工具 1. XML编辑器:如Notepad++(配合XML Tools插件)、oXygen XML Editor等,提供语法高亮、格式化和验证功能。 2. 在线...

    js解析xml实现二级,三级联动简单成功实例源代码及相关文档

    通过这种方式,开发者可以快速理解并学习如何用JavaScript解析XML,以及如何实现联动效果。这个实例对于提升JavaScript编程能力和实际项目经验都非常有帮助。 总之,"js解析xml实现二级,三级联动简单成功实例"是一...

    C++解析xml文档或者xml字符串方法

    在C++中,解析XML文档或XML字符串是常见的任务,特别是在需要与JavaScript或其他不支持指针的语言交互时。本文将详细介绍如何在Visual Studio 2010环境下利用Microsoft的MSXML库来处理XML数据。 首先,让我们看看...

    javascript解析xml文件

    在JavaScript中解析XML文件是一项常见的任务,特别是在网页开发中,我们可能需要将XML数据转换为HTML以便更好地展示或处理。JavaScript提供了DOMParser API和ActiveXObject(仅限于Internet Explorer)来解析XML。...

    JavaScript解析XML文档成树菜单

    总结,JavaScript解析XML文档成树菜单涉及到DOM解析、XMLHttpRequest或fetch请求、DOM遍历、HTML结构生成、事件处理等多个技术点。具体实现可能因XML结构和需求而异,但基本流程是相似的。阅读原博客(288976)可以...

    JavaScript解析多子节点XML实例

    JavaScript解析多子节点XML xml实例: &lt;?xml version="1.0" encoding="GBK"?&gt; &lt;a&gt; &lt;b&gt; &lt;c type="0" centerx="1" centery="2" dispname="3" linestr=""&gt; &lt;d name="OBJECTID" value="100" /&gt; ...

    Ext解析XML实例

    ### Ext解析XML实例 #### 核心概念 - **ExtJS**:一个用JavaScript编写的前端框架,用于构建交互式的Web应用程序。 - **XML**(可扩展标记语言):一种用于存储和传输数据的标准格式,它以人类可读的形式定义了数据...

    javascript读写XML文件

    ### JavaScript读写XML文件:深度解析与应用实例 在现代Web开发中,XML(Extensible Markup Language)作为一种标准的数据交换格式,被广泛应用于各种场景,如配置文件、数据传输等。利用JavaScript进行XML文件的...

    widget加载和解析xml 字符串实例

    本实例详细介绍了如何使用JavaScript加载和解析XML字符串,并展示了如何将提取的数据动态显示在网页上。这对于构建高效、响应式的Widget应用来说是非常有用的技能。通过这种方式,我们可以轻松地与服务器进行通信,...

    JavaScript与xml结合的实例

    在这个实例中,我们将深入探讨如何利用 JavaScript 处理 XML 文档,实现分页技术,以提高用户体验。 首先,理解 JavaScript 和 XML 的基本概念至关重要。JavaScript 是一种解释型、跨平台的编程语言,主要用于网页...

    读写XML文件实例 Javascript

    // 解析XML为JavaScript对象 xml2js.parseString(data, (err, result) =&gt; { if (err) { console.error('Error parsing XML:', err); return; } // 输出解析后的JavaScript对象 console.log('Parsed XML:', ...

    JavaScript 解析读取XML文档 实例代码

    JavaScript解析读取XML文件,主要就是加载并解析XML文件,然后就可以测试解析的XML文件的内容,打印输出来。 在线演示:http://demo.jb51.net/js/2012/readxml/注:测试的时候需要在网站中测试,iis或apache中,注意...

    JavaScript获取XML文件的数据

    JavaScript,作为Web开发中的主要脚本语言,提供了DOM(Document Object Model) API,可以用来解析XML文档并进行操作。 1. **加载XML文件** - **使用AJAX**:XMLHttpRequest对象是JavaScript中用于异步请求数据的...

    DOMParser解析xml

    使用DOMParser解析XML文档,首先需要创建一个DOMParser实例,然后调用其`parseFromString()`方法,传入XML字符串作为参数。例如: ```javascript let parser = new DOMParser(); let xmlString = "&lt;root&gt;...

    Js解析xml实现省市县简三级联动单成功实例

    总结来说,这个成功的实例展示了如何用JavaScript解析XML数据,并结合DOM操作实现省市县三级联动的效果。在实际应用中,这种技术常用于动态生成下拉列表,提供用户友好的交互体验,特别是在需要根据上一级选择更新下...

    兼容浏览器的解析xml的js代码

    在JavaScript中,解析XML文档并使用XPath进行查询是一项常见的任务,尤其在开发跨浏览器的Web应用时,确保代码兼容性尤为重要。XPath是一种在XML文档中查找信息的语言,它允许我们根据节点的名称、属性、值或其他...

    JavaScript读取xml文件内容.zip

    本文将深入探讨如何使用JavaScript处理XML文件,包括解析XML、访问XML节点以及展示XML数据。 首先,我们需要了解XML(Extensible Markup Language)是一种标记语言,常用于传输和存储数据。它的结构清晰,易于人...

    js解析xml案例用层布局

    1. **JavaScript解析XML**:在JavaScript中,可以使用`DOMParser`对象或者`ActiveXObject`(仅限于IE浏览器)来解析XML文档。`DOMParser`是W3C标准,支持所有现代浏览器。例如: ```javascript var parser = new DOM...

    Flex里解析XML数据

    在Flex中,XML对象提供了一种灵活的方式来创建、操作和解析XML文档。通过实例化XML类,我们可以加载XML数据并对其进行解析: ```actionscript var xml:XML = new XML("&lt;root&gt;&lt;item&gt;Value&lt;/item&gt;&lt;/root&gt;"); ``` 3. ...

Global site tag (gtag.js) - Google Analytics