javascript中xml操作实现代码
2023-06-13 09:14:31 时间
JavaScript端:
复制代码代码如下:
//初始化页面
functioninit(){
varary=JSONToArray(XMLReader("node","content.dibi"));
vardivtoc=document.getElementById("div_toc");
pageCount=ary.length;
for(k=0;k<ary.length;k++){
obj=eval("("+ary[k]+")");
divtoc.innerHTML+="<ahref="javascript:changeImage("+obj.page.substring(obj.page.length-1)+")">"
+obj.label+"</a> ";
}
page=1;
changeImage(page);
varpageManager=document.getElementById("div_page");
pageManager.innerHTML="<ahref="javascript:changePage(0)">上一页</a> "
+"<ahref="javascript:changePage(1)">下一页</a><br/><br/>";
varary2=JSONToArray(XMLReader("meta","content.dibi"));
vardivmeta=document.getElementById("div_meta");
varstyStr="<table>"
for(l=0;l<ary2.length;l++){
obj2=eval("("+ary2[l]+")");
styStr+="<tr><td>"+obj2.name+"</td><td>"+obj2.content+"</td></tr>";
}
divmeta.innerHTML=styStr+"</table>";
}
//解析.dibi文件。
functionXMLReader(key,fileName){
varparse=BrowserValidator();
parse.load(fileName);
varjson="";
try{
vardom=parse.documentElement;
varattrLength=0;
for(i=0;i<dom.getElementsByTagName(key).length;i++){
attrLength=dom.getElementsByTagName(key)[i].attributes.length;
objMsg=",{";
for(j=0;j<attrLength;j++){
objMsg+="""+dom.getElementsByTagName(key)[i].attributes[j].name
+"":""+dom.getElementsByTagName(key)[i].attributes[j].value+"",";
}
objMsg=objMsg.substring(0,objMsg.length-1);
json+=objMsg+"}";
}
json=json.substring(1);
}catch(e){}
returnjson;
}
//判断浏览器类型。支持IE,fireFox。
functionBrowserValidator(){
varresult;
if(!window.DOMParser&&window.ActiveXObject){
result=newActiveXObject("Microsoft.XMLDOM");
result.async=false;
}
elseif(document.implementation&&document.implementation.createDocument){
result=document.implementation.createDocument("","",null);
result.async=false;
}
returnresult;
}
varpage=1;//当前页
varpageCount;//总页数
//根据点击改变页面图片
functionchangeImage(page1){
page=page1;
vardivimg=document.getElementById("div_img");
divimg.innerHTML="<imgwidth="500"src="images/"+page+".jpg"/>";
}
//上页及下页
functionchangePage(flag){
if(flag==0&&page>1){
page--;
}
if(flag==1&&page<pageCount){
page++;
}
changeImage(page);
}
//将JSON数据转换成数组
functionJSONToArray(json){
returnjson.replace(newRegExp("},","g"),"}|").split("|");
}
HTML端:
<html>
<head>
<title></title>
<scriptlanguage="javascript"type="text/javascript"charset="gbk"src="xmlhelper.js"></script>
</head>
<bodyonload="init()">
<divid="div_toc"></div>
<divid="div_img"></div>
<divid="div_page"></div>
<divid="div_meta"></div>
</body>
</html>
XML端:略。
相关文章
- java解析xml element_java解析XML Node与Element的区别(推荐)「建议收藏」
- xml格式化 java_Java XML格式化程序
- JavaScript高级(10)
- 用settimeout如何实现倒计时_javascript一分钟倒计时代码
- SAP UI5 本地开发如何实现 XML 和 JavaScript 代码的自动完成和嵌入式 API 文档自动显示试读版
- Sparky:用于制作走势图的 JavaScript 库
- JavaScript学习总结(五)——Javascript中==和===的区别详解编程语言
- 深入理解Oracle数据库XML编程(oracle数据库xml)
- Oracle导入XML数据的快速方法(oracle导入xml)
- XML数据导入MSSQL:实现简便迅速(xml导入mssql)
- 轻松学习:如何在 Linux 上安装 XML 解析器(linux安装xml)
- MSSQL妙用:用XML解析精彩世界(mssql 解析 xml)
- MSSQL方式快速生成XML文件(mssql 生成xml)
- MySQL中如何使用XML进行数据判断(mysql中xml判断)
- MySQL和XML实现配置文件的完美结合(mysql xml配置c)
- MySQL中的XML函数简介(mysql xml函数)
- MySQL 数据库使用 XML 进行替换操作(mysql xml替换)
- 深入了解MySQL XML数据库数据存储和管理的细节(mysql xml数据库)
- Oracle XML安装指南(oracle xml安装)
- 优化Oracle XML伪列体验提升表现(oracle xml伪列)
- Javascript调用XML制作连动下拉列表框
- Javascript技术技巧大全(五)
- JavaScript异步调用框架(Part6-实例&模式)
- 解读JavaScript代码varie=!-[1,]最短的IE判定代码
- javascript教程之不完整的继承(js原型链)
- 一个JavaScript的求爱小特效
- javascript数组遍历for与forin区别详解
- Javascript基础教程之JavaScript语法
- JavaScript中使用arguments获得函数传参个数实例