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

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

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

    解決之道

    個人日記
    posts - 33, comments - 1, trackbacks - 0, articles - 7
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    [導入]javascript讀取xml

    Posted on 2008-07-31 14:53 閱讀(120) 評論(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\/> ' );
    }


    kelven 2006-12-25 17:12 發表評論

    文章來源:http://m.tkk7.com/zhangrenquan/articles/89946.html

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产精品亚洲综合网站| 亚洲人成网址在线观看| 亚洲黄色激情视频| 99久久精品国产免费| 亚洲热妇无码AV在线播放| 国产精品永久免费视频| 久草视频免费在线观看| 亚洲成aⅴ人片在线影院八| 成全视频免费高清| 老司机午夜精品视频在线观看免费| 亚洲第一永久AV网站久久精品男人的天堂AV | 色屁屁www影院免费观看视频| 亚洲中文字幕久久精品无码2021| 最新中文字幕电影免费观看| 99re视频精品全部免费| 99在线热播精品免费99热| 亚洲美女一区二区三区| 成人午夜性A级毛片免费| 日本片免费观看一区二区| 亚洲爆乳大丰满无码专区| 亚洲精品天堂成人片?V在线播放| a级毛片高清免费视频| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 亚洲中文字幕无码av在线| 亚洲视频在线不卡| 亚洲人成电影福利在线播放| 亚洲成亚洲乱码一二三四区软件| 日韩在线免费视频| 免费在线观看自拍性爱视频| 亚洲人成影院在线| 久久国产亚洲电影天堂| 日本免费一二区在线电影| 日韩在线观看免费| 日韩精品无码免费视频| 成人久久久观看免费毛片| 一级黄色片免费观看| 一区二区亚洲精品精华液 | 成人精品视频99在线观看免费| 亚洲欧洲综合在线| 美腿丝袜亚洲综合| 免费无码A片一区二三区|