首 页 | 精品电影 | 音乐天堂 | 在线游戏 | Flash MTV | 三湘书屋 | 幽默笑话 | 三湘图库 | 美女写真 | IT知识库 | QQ贴图 | 加入书签

网页制作网络编程图形图象操作系统冲浪宝典软件教学网络安全认证考试通信技术电子商务业内动态书籍教程原码

最近更新 文章分类 多媒体类 精品软件

本站搜索:
您的位置:三湘时空 -> IT知识库 -> 文章分类 -> Javascript教程 -> Javascript+XML 操作
Javascript+XML 操作


文章类别:Javascript教程 来源: 作者: 发表日期:2006-9-19 字体:[ ]

小游戏 | 在线影院 | 幽默笑话 | 源码下载 | Flash MTV | 音乐试听 | 书屋 | 美女写真

我的xml文件Login.xml如下.


   
       
       
       
       
       
   

   
       
       
   

   
       


       


       


       


       


   

现在我需要对这个xml文件的内容进行操作.
首先,我们需要加载这个xml文件,js中加载xml文件,是通过XMLDOM来进行的.
// 加载xml文档
loadXML    = function(xmlFile)
{
    var xmlDoc;
    if(window.ActiveXObject)
    {
        xmlDoc    = new ActiveXObject('Microsoft.XMLDOM');
        xmlDoc.async    = false;
        xmlDoc.load(xmlFile);
    }
    else if (document.implementation&&document.implementation.createDocument)
    {
        xmlDoc    = document.implementation.createDocument('', '', null);
        xmlDoc.load(xmlFile);
    }
    else
    {
        return null;
    }
   
    return xmlDoc;
}

xml文件对象出来了, 接下去我就要对这个文档进行操作了.
比如说,我们现在需要得到节点Login/Weapon/W的第一个节点的属性,那么我们可以如下进行.


// 首先对xml对象进行判断
checkXMLDocObj    = function(xmlFile)
{
    var xmlDoc    = loadXML(xmlFile);
    if(xmlDoc==null)
    {
        alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
        window.location.href='/Index.aspx';
    }
   
    return xmlDoc;
}

// 然后开始获取需要的Login/Weapon/W的第一个节点的属性值
var xmlDoc    = checkXMLDocObj('/EBS/XML/Login.xml');
var v    = xmlDoc.getElementsByTagName('Login/Weapon/W')[0].childNodes.getAttribute('Text')
而我在我的程序中的写法是这样子的,当然我在程序中的写法是已经应用到实际中的了.一并给出来,以供查看
initializeSelect    = function(oid, xPath)
{
    var xmlDoc    = checkXMLDocObj('/EBS/XML/Login.xml');
    var n;
    var l;
    var e    = $(oid);
    if(e!=null)
    {
        n    = xmlDoc.getElementsByTagName(xPath)[0].childNodes;
        l    = n.length;
        for(var i=0; i        {
            var option    = document.createElement('option');
            option.value    = n[i].getAttribute('Value');
            option.innerHTML    = n[i].getAttribute('Text');
            e.appendChild(option);
        }
    }
}
上面的访问代码中,我们是通过xmlDoc.getElementsByTagName(xPath)来进行的.
还可以通过xmlDoc.documentElement.childNodes(1)..childNodes(0).getAttribute('Text')进行访问.
一些常用方法:
xmlDoc.documentElement.childNodes(0).nodeName,可以得到这个节点的名称.
xmlDoc.documentElement.childNodes(0).nodeValue,可以得到这个节点的值. 这个值是来自于这样子的xml格式:b, 于是可以得到b这个值.
xmlDoc.documentElement.childNodes(0).hasChild,可以判断是否有子节点

根据我的经验,最好是使用getElementsByTagName(xPath)的方法对节点进行访问,因为这样子可以直接通过xPath来定位节点,这样子会有更好的性能.

上一篇:Photoshop简单打造一张不错的旅游明信片 下一篇:Photoshop实例教程:帮美女纹身
本栏目热门文章
·javascript+xml实现二级下拉菜单,不会被任何标签或元素遮 2005-10-4
·JavaScript Web页面内容导出到Word、Excel 2005-11-7
·用javascript连接access数据库的方法 2005-10-4
·JAVASCRIPT加密解密终级指南 2005-10-4
·TreeView节点互斥,autopostback=false的方法 2005-10-4
·网页对联广告代码效果大全 2005-11-7
·网页javascript精华代码集 2006-1-6
·利用JS获取IE客户端IP及MAC的实现 2006-1-10
·javascript应用:实现复选框全选/全不选切换 2006-1-6
·Javascript的IE和Firefox兼容性汇编 2005-10-4
新近更新文章
·浅谈JavaScript中面向对象技术的模拟 2006-9-24
·理解JavaScript中的事件 2006-9-24
·ajax技术制作得在线歌词搜索功能 2006-9-24
·FireFox 如何用Javascript 修改状态栏 2006-9-24
·弹出窗口window.open()的参数列表 2006-9-24
·JavaScript的document和window对象详解 2006-9-20
·JavaScript自定义模式对话框 2006-9-20
·Javascript+XML 操作 2006-9-19
·经典正则表达式 (收藏整理) 2006-9-19
·js关于document和window对象 2006-9-14
首 页 | 软件发布 | 广告联系 | 下载帮助 | 意见反馈 | 网站地图
  CopyRight? 2002-2004 WWW.SXSKY.NET? All Rights Reserved
三湘时空 站长QQ:82675303 Email: