首頁  >  文章  >  後端開發  >  JS讀取XML資料的範例程式碼分享

JS讀取XML資料的範例程式碼分享

黄舟
黄舟原創
2017-03-23 16:30:271562瀏覽

    最近在專案中由於考慮到存取效能的問題,已經對內頁等做生成靜態處理了,但是裡面有些內容又是需要動態的,按照以前的方式,應該是會用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資料的範例程式碼分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn