<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 22,comments - 35,trackbacks - 0
    /**
    ?*?得到XML文件屬性的集合對象
    ?*?
    @param ?xmlDoc?XML對象
    ?*?
    @param ?name?屬性名稱?如:?user
    ?*?
    @return ?返回?Array?對象
    ?*?Example?XML:
    ?*?<?xml?version='1.0'?encoding='utf-8'?>
    ?*?<ekuy>
    ?*???<user>
    ?*?????<name>
    ?*???????<cnname>小豬</cnname>
    ?*?????</name>
    ?*?????<age>27</age>
    ?*???</user>
    ?*???<user>
    ?*?????<name>
    ?*???????<cnname>小霞</cnname>
    ?*?????</name>
    ?*?????<age>26</age>
    ?*???</user>
    ?*?</ekuy>
    ?
    */
    function?getXMLArray(xmlDoc,?name)?{
    ??var?keys?
    = ?name.split( ' . ' );
    ??var?node?
    = ?xmlDoc.documentElement;?????? // ?得到根節點
    ??var?rtn? = ? new ?Array();
    ??var?n?
    = ? 0 ;

    ??
    for (var?i = 0 ;?i < keys.length;?i ++ )?{
    ????var?childs?
    = ?node.childNodes;??????? // ?得到子節點
    ????var?key? = ?keys[i];
    ?
    for (var?k = 0 ;?k < childs.length;?k ++ )?{??????
    ???var?child?
    = ?childs[k];
    ???
    if (child.nodeName? == ?key)?{????? // ?判斷子節點是否符合
    ?? if (i? == ?keys.length - 1 )?{
    ??????????rtn[n]?
    = ?child;
    ????n
    ++ ;
    ??}?
    else ?{
    ????node?
    = ?child;
    ????
    break ;
    ??}
    ???}
    ?}
    ??}


    ??
    return ?rtn;
    }


    /**
    ?*?得到由getXMLArray函數得到對象中的值
    ?*?
    @param ?node?節點對象
    ?*?
    @param ?name?
    ?*?
    @return ?返回?String?
    ?
    */
    function?getValue(node,?name)?{
    ??var?keys?
    = ?name.split( ' . ' );
    ??
    ??
    for (var?i = 0 ;?i < keys.length;?i ++ )?{
    ????var?childs?
    = ?node.childNodes;??????? // ?得到子節點
    ????var?key? = ?keys[i];
    ?
    for (var?k = 0 ;?k < childs.length;?k ++ )?{??????
    ???var?child?
    = ?childs[k];
    ???
    if (child.nodeName? == ?key)?{????? // ?判斷子節點是否符合
    ?? if (child.childNodes.length? == ? 1 )?{?????????
    ????
    // ?如果沒有字節點,返回值
    ???? return ?child.text;
    ??}?
    else ?{?????????????????????????????????
    ????
    // ?還有子節點,繼續分析
    ????node? = ?child;
    ????
    break ;
    ??}
    ???}
    ?}
    ??}


    ??
    return ? "" ;
    }



    // ?測試:


    var?xmlDoc?
    = ? new ?ActiveXObject( " Microsoft.XMLDOM " );
    xmlDoc.async?
    = ? false ;
    xmlDoc.loadXML(
    " <?xml?version='1.0'?encoding='utf-8'?><ekuy><user><name><cnname>小豬</cnname></name><age>27</age></user><user><name><cnname>小霞</cnname></name><age>26</age></user><user><name><cnname>小章</cnname></name><age>25</age></user></ekuy> " );


    var?list?
    = ?getXMLArray(xmlDoc,? ' user ' );
    for (var?i = 0 ;?i < list.length;?i ++ )?{
    ??var?obj?
    = ?list[i];
    ??document.write(getValue(obj,?
    ' name.cnname ' ));
    ??document.write(getValue(obj,?
    ' age ' ));
    ??document.write(
    ' <br\/> ' );
    }
    posted on 2006-12-25 17:12 kelven 閱讀(1254) 評論(1)  編輯  收藏 所屬分類: JavaScript

    FeedBack:
    # re: javascript讀取xml
    2007-12-14 13:20 | 路過
    那在firefox中怎么辦呢?  回復  更多評論
      
    主站蜘蛛池模板: 国产精成人品日日拍夜夜免费| 亚洲专区先锋影音| 日本系列1页亚洲系列| 香蕉视频在线观看免费国产婷婷 | 亚洲国产成人VA在线观看| 亚洲gay片在线gv网站| 国产福利免费观看| 国产天堂亚洲精品| 免费在线观看黄色毛片| 一个人看的免费观看日本视频www 一个人看的免费视频www在线高清动漫 | 亚洲av无码电影网| 免费福利网站在线观看| 99久久婷婷国产综合亚洲| 最近中文字幕mv免费高清视频7| 久久夜色精品国产噜噜亚洲a| 精品无码国产污污污免费| 污网站在线免费观看| 亚洲日韩精品A∨片无码| 亚洲精品免费观看| 亚洲粉嫩美白在线| 亚洲国产精品激情在线观看| 国产无遮挡又黄又爽免费网站| 亚洲gv白嫩小受在线观看| 日本免费一区二区久久人人澡| 亚洲精品白色在线发布| 日韩高清在线免费观看| 男人扒开添女人下部免费视频| 亚洲国产电影av在线网址| 日本免费电影一区二区| 亚洲欧美第一成人网站7777| 亚洲日本一区二区一本一道| 免费人成视频在线观看网站| 最新亚洲春色Av无码专区| 国产精品亚洲玖玖玖在线观看| 日韩免费的视频在线观看香蕉| 亚洲日韩乱码久久久久久| 国产精品酒店视频免费看| 99免费精品视频| 亚洲中文无码卡通动漫野外| 久久亚洲AV无码西西人体| 1000部拍拍拍18勿入免费凤凰福利 |