<script language="JavaScript" type="text/javascript">
var xmlFile="http://xling.blueidea.com/rss2.xml";
var createXMLDom=function(){
if (window.ActiveXObject)
var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
else
if (document.implementation&&document.implementation.createDocument)
var xmldoc=document.implementation.createDocument("","doc",null);
xmldoc.async = false;
//为了和FireFox一至,这里不能改为False;
xmldoc.preserveWhiteSpace=true;
return xmldoc;
}
var createXMLHttp=function(){
var xmlHttp;
if (window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttp=new XMLHttpRequest();
}
return xmlHttp;
}
//-----------------------------------------------------------------------------
//加载XML文件。
var xmlDom=createXMLDom();
try{
xmlDom.load(xmlFile);
}catch(e){
var xmlHttp=createXMLHttp();
xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState == 4){
xmlDom=xmlHttp.responseXML;
}else{
//window.state="XML文件加载中...";
}
}
xmlHttp.open("GET",xmlFile,false);
xmlHttp.send(null);
}
var DOMRoot=xmlDom.documentElement;
//取出指定节点的属性。
var getDOMAtt=function(pNode,pAttribute){
try{
return pNode.attributes.getNamedItem(pAttribute).nodeValue;
}catch(e){
//alert("指定节点不存在,或指定属性:"+pAttribute+" 不存在!")
return false;
}
}
var attList=function(pNode){
if(pNode.nodeType == 4) return '';
var oAtt,tmpString="[ ";
try{
for(var i=0;oAtt=pNode.attributes[i];i++){
tmpString+=oAtt.nodeName+" = '" + oAtt.nodeValue+"' ";
}
tmpString+=" ]"
return tmpString;
}catch(e){ return ''}
}
var getNodeName = function(pNode){
if(pNode.nodeType == 4) return '';
return pNode.nodeName;
}
var getNodeValue = function(pNode){
try{
return " : " + pNode.firstChild.nodeValue;
}catch(e){return ''}
}
var nbsp=function(pNum){
var tmpString=""
for(var i=0;i<pNum;i++){
tmpString+=" "//这里是全角的空格
}
return tmpString;
}
var switchTree=function(pNode,pLevel){
var tNode,i;
for(i=0;tNode=pNode.childNodes[i];i++){
if(tNode.nodeType==3) continue;//因为preserveWhiteSpace等于true
document.write(nbsp(pLevel),"<font color='blue'><b>",getNodeName(tNode),"</b></font><font color='red'>",attList(tNode),"</font>",getNodeValue(tNode),"<br />");
switchTree(tNode,pLevel+1);
}
}
switchTree(DOMRoot,2)
</script>
</html>
发表评论
-
没事写个JSON
2010-04-02 10:28 1147JS方法: <html> <head> ... -
xml
2008-12-18 13:11 1014<body><div id=x> ... -
ajax遍历xml文档
2008-12-18 12:54 1585XMLHttpRequest对象提供了两个可以用来访问服务器响 ... -
一dwr例子
2008-09-02 21:27 1144HelloTest.java: package com. ... -
Google发布AJAX框架 Google Web Toolkit
2006-05-30 00:51 1205Google Web Toolkit是一个开放版本的AJAX ... -
Ajax框架汇总
2006-07-08 16:49 928原始出处: 1 Bindows (from 2003) ... -
AJAX框架之Bindows
2006-07-09 15:38 1055创建日期:2004年7月8日 作 者:Ilan Zisser ... -
调查一下大家在用的AJAX框架
2006-10-28 03:32 979调查一下大家在用的AJAX框架,根据投票结果会整理一些相关的讨 ... -
Dojo推出0.4.0
2006-10-31 15:42 883今天在坛子里,看到有朋友用到了Dojo 0.4.0,遂上Doj ... -
JavaScript编程规范(Javascript Programming Conventions)
2006-12-16 04:24 1020在dojo上看到一篇有关JavaScript编程规则的文章,供 ... -
JsEasy简介
2007-02-19 03:34 974JsEasy简介 JsEasy是什么? JsEa ... -
WediaAjax诚挚邀请大家一起帮忙写Demo
2007-03-24 07:45 875大家好,发这篇文章的目的是希望能认识到更多的朋友,并帮助我一起 ... -
Dojo 0.4.2发布
2007-04-04 15:40 962在3月20日,Dojo发布了 0.4.2版本,这是对Dojo ... -
Dojo做的站点
2007-04-12 03:09 10371,TitlePane 首页点击“折叠评论”后,弹出详细内容 ... -
Ajax DWR 框架 util.js 文件学习整理
2007-04-23 09:36 1346Ajax DWR 框架 util.js 文件学习整理 util ... -
Brocade: visita效果的Ajax演示程序
2007-04-25 12:37 984visita效果的Ajax演示程序,支持firefox1.0、 ... -
桌面论坛“百工”Alpha1.0 和 桌面 Blog 版开始公测
2007-04-25 13:39 884由“百工”工作室强力打造的桌面Blog和桌面论坛,现在开始公测 ... -
WediaAjax Pro1.0 has been published as an open source project
2007-05-07 13:01 913Hi everyone, WediaAjax is a sma ... -
JSI2Alpha及JSA1beta 发布
2007-06-29 04:55 888原文见:
相关推荐
这篇博客“使用javascript遍历XML文件并显示”探讨了如何利用JavaScript对XML文件进行读取和遍历,并将内容呈现在网页上。 首先,我们需要理解XML的基本概念。XML是一种自描述的、结构化的数据格式,用于存储和传输...
针对这一问题,"遍历XML文件内所有节点和属性"的非递归方法应运而生。 在描述中提到的“比递归调用的速度要快很多”,这通常是指通过迭代而非递归的方式遍历XML文档。递归方法会为每个节点创建新的函数调用栈,而当...
在jQuery 1.5中,遍历XML节点属性主要通过以下方法实现: 1. **jQuery.parseXML()**:这是jQuery提供的一个静态方法,用于将XML字符串解析为DOM对象。例如: ```javascript var xmlString = "<root><node attr1='...
本文将深入探讨如何使用JavaScript来遍历XML文档和处理JSON对象。 首先,让我们了解XML。XML是一种自描述性的标记语言,用于存储和传输结构化数据。在JavaScript中,我们通常使用`DOMParser`或`ActiveXObject`(IE...
在本主题“DOM遍历所有XML节点,并且重新生成XML”中,我们将深入探讨如何利用DOM API遍历XML文档的所有节点,并根据需求重新构建XML文档。 首先,让我们了解XML的基本结构。XML(eXtensible Markup Language)是一...
- DOM提供了一套API,允许JavaScript遍历XML树,访问、插入和删除节点。 - `getElementsByTagName()`, `getElementById()`, `getAttribute()`, `childNodes`, `parentNode`等方法是常用的DOM操作方法。 4. **XML...
本文主要探讨了如何使用jQuery以及JavaScript原生方法来遍历XML文件中的节点和属性,并给出了一个具体的实现示例。 首先,我们需要了解jQuery如何加载XML文件。在示例中,通过AJAX调用jQuery的$.get方法从服务器...
- 在创建表格过程中,首先初始化表格头(标签),然后遍历XML文档的节点来填充表格数据。 4. 兼容性考虑: - 示例中提到了IE和火狐(Firefox)浏览器,这意味着代码在编写时需要考虑到不同浏览器对XMLHttpRequest...
3. 遍历XML树: - `childNodes`:获取所有子节点。 - `firstChild` 和 `lastChild`:获取第一个和最后一个子节点。 - `nextSibling` 和 `previousSibling`:获取当前节点的下一个和上一个兄弟节点。 三、XML事件...
### JavaScript 对 XML 文件解析知识点详解 #### 一、XML 文件解析背景及意义 XML(Extensible Markup Language,可扩展标记语言)是一种用于标记数据的语言,主要用于传输和存储数据。在 Web 开发中,XML 常被...
DOM是将XML文档转化为一个树形结构,每个元素、属性、文本等都表示为树上的一个节点,通过遍历这个树来访问和修改XML内容。而SAX则是一种事件驱动的解析方式,它逐行读取XML文件,当遇到某个元素、属性时触发相应的...
它同样根据点号分隔的路径遍历XML文档,但当找到目标节点时,如果该节点没有子节点,就直接返回其文本内容。 在`AddTb`函数中,XML文档被加载并用这两个函数解析,然后将解析出的数据填充到HTML表格中。这展示了...
本篇文章将深入探讨如何使用JavaScript DOM(Document Object Model)来遍历XML文档,通过具体的详细代码实现,帮助开发者更好地理解和掌握这一技术。 在JavaScript中,XML文档可以通过DOM接口进行解析和操作。DOM...
AJAX遍历XML文档的方法涉及到了几个关键技术点,包括AJAX技术、XMLHttpRequest对象、XML文档以及W3C DOM方法。 首先,AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个页面的情况下,能够更新部分...
在JavaScript中,XML DOM(Document Object Model)提供了一组接口,用于创建、修改和遍历XML文档。例如,你可以使用`DOMParser`对象将XML字符串解析为DOM树: ```javascript let xmlString = '<root><item id="1">...
6. **遍历XML树**:一旦得到`Document`对象,可以使用`getElementsByTagName`,`childNodes`,`firstChild`,`nextSibling`等方法遍历XML树,找到需要的数据。 7. **创建HTML Tree**:将解析出的XML结构转换为HTML...