您好,欢迎访问一九零五行业门户网

JS读取XML数据的示例代码分享

最近在项目中由于考虑到访问性能的问题,已经对内页等做生成静态处理了,但是里面有些内容又是需要动态的,按照以前的方式,应该是会用js的调用一个动态的脚本文件,前端时间看了下红孩子,好像里面有些代码蛮不错的,都是js调用xml数据的,xml可以直接用动态脚本程序去生成,呵呵,不错的东西简单的研究了下,直接拿过来就可以使用了。
xml数据格式如下:
<?xml version="1.0" encoding="gb2312"?> <root> <item> <name>刘亦菲</name> <url>mingxing/liuyifei.htm</url> <color>7a9d4b</color> </item> <item> <name>蔡依林</name> <url>mingxing/caiyilin.htm</url> <color>fd0000</color> </item> <item> <name>张娜拉</name> <url>mingxing/zhangnala.htm</url> <color>7a9d4b</color> </item> <item> <name>张韶涵</name> <url>mingxiang/zhangshaohan.htm</url> <color>0000ff</color> </item> <item> <name>张靓颖</name> <url>mingxing/zhangliangyin.htm</url> <color>7a9d4b</color> </item> <item> <name>李宇春</name> <url>mingxing/liyuchun.htm</url> <color>7a9d4b</color> </item> <item> <name>徐若瑄</name> <url>mingxing/xuluxuan.htm</url> <color>fd0000</color> </item> </root>
前端js脚本代码如下:
//获取网站热门点击排行
var cdsales=new activexobject("microsoft.xmldom"); //创建xmldom对象 cdsales.async=true; //使用异步加载 cdsales.onreadystatechange=loadedsales; function loadedsales() { var txt=""; if(cdsales.readystate==4) { if(cdsales.parseerror.errorcode != 0) { txt=""; }else{ var bi=cdsales.documentelement.selectnodes("item"); if(bi!=null&&bi.length>0) { for(var i=0;i<bi.length;i++) { txt+="<li>·<a href="+bi[i].childnodes[1].text+" style=color:"+bi[i].childnodes[2].text+">"+bi[i].childnodes[0].text+"</a></li>"; } }else{ txt=""; } } }else{ txt=""; } sales.innerhtml=txt; } function loadsalesdoc() { var url="/xml/hot.xml"; cdsales.load(url); }
上面的hot.xml可以使用程序去自动生成,只要输出来的页面为xml的格式就可以了。好像现在越来越多的网站已经开始使用p+js+xml的方式去架构,呵呵,这里先学习下代码效果还是比较不错的,至少静态页面也可以动态的去读取数据库了,不知道这个是不是ajax的概念,应该算是吧。
以上就是js读取xml数据的示例代码分享的详细内容。
其它类似信息

推荐信息