今天在幫朋友寫(xiě)一個(gè)簡(jiǎn)單的產(chǎn)品發(fā)布網(wǎng)站,由于使用的空間是靜態(tài)的,沒(méi)有辦法只能在javascript上下功夫了。首先想到的便是RIA,上網(wǎng)google了一下,發(fā)現(xiàn)這樣的東西還真不少,可謂是十八般武藝各顯靈通。看了看文明的bindows,感覺(jué)真的非常的好。可是選擇它對(duì)于我要做的東西,可以說(shuō)是過(guò)于復(fù)雜了。(http://www.bindows.net 有興趣的朋友可以去看看)。
搜索了半天最后還是決定,采用javascript讀取服務(wù)器端xml文件的辦法來(lái)實(shí)現(xiàn)。嘗試了一下感覺(jué)還不錯(cuò),確定就是對(duì)使用的瀏覽器有依賴(lài)。
先寫(xiě)了一個(gè)商品的xml文件:













使用javascript來(lái)讀入xml實(shí)在是相當(dāng)?shù)暮?jiǎn)單,只需要兩句話就可以搞定:








指定要載入的xml文件名就可以完成對(duì)xml的讀入。


得到xml對(duì)象后就可以適用對(duì)象提供的相應(yīng)方法和屬性來(lái)獲取xml中定義的數(shù)據(jù)信息。
xmlObj.hasChildNodes來(lái)判斷是否含有子項(xiàng);
xmlObj.childNodes.lenght 得到包含的子項(xiàng)的數(shù)量
子項(xiàng)可以用數(shù)字來(lái)作為索引,以product.xml為例。如果我們要獲取第二條商品時(shí),可以用xmlObj.childNodes(1)來(lái)獲得,xmlObj.childNodes(1).childNodes(0)得到的是description
xmlObj.childNodes(1).childNodes(0).text 得到description的值
xmlObj.childNodes(1).getAttribute("name") 得到第二條商品的名字