<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 閱讀(1242) 評論(1)  編輯  收藏 所屬分類: JavaScript

    FeedBack:
    # re: javascript讀取xml
    2007-12-14 13:20 | 路過
    那在firefox中怎么辦呢?  回復  更多評論
      
    主站蜘蛛池模板: 亚洲日韩国产成网在线观看 | 亚洲第一街区偷拍街拍| 成全视频高清免费观看电视剧| 亚洲国产电影av在线网址| 亚洲国产成人精品无码区花野真一| 日韩中文字幕精品免费一区| 亚洲精品91在线| 精品熟女少妇av免费久久| 亚洲av无码不卡一区二区三区| a级毛片免费在线观看| 亚洲乱码日产一区三区| 成人性做爰aaa片免费看| 亚洲VA中文字幕无码毛片| 免费日本一区二区| 亚洲色图黄色小说| 国产免费看JIZZ视频| 伊人久久五月丁香综合中文亚洲 | 国产91久久久久久久免费| 国产亚洲精品免费| 亚洲日韩国产一区二区三区| 人妻18毛片a级毛片免费看| 国产亚洲精品AA片在线观看不加载 | 亚洲最大成人网色香蕉| 成年女性特黄午夜视频免费看| 亚洲日韩国产一区二区三区在线| 全免费一级毛片在线播放| 国产精品亚洲lv粉色| 狠狠亚洲婷婷综合色香五月排名| 在线看片免费人成视频播| 亚洲成在人线电影天堂色| 暖暖免费高清日本一区二区三区| 日本中文字幕免费看| 亚洲AV综合色区无码一区| 国产免费不卡v片在线观看| 日韩亚洲综合精品国产| 亚洲人成色777777在线观看| 永久黄色免费网站| 亚洲人成网站在线播放2019 | 久久久久久毛片免费播放 | 香蕉国产在线观看免费| 久久亚洲精品无码|