xml Dom demo笔记

本文介绍了一段JavaScript代码,该代码展示了如何解析XML字符串并读取其中的数据,同时演示了如何创建复杂的HTML结构。通过实例代码,读者可以了解DOM操作及节点处理的基本方法。
<script type="text/javascript">
    //************解析一段html出来从xml开始*****
    
    text="<bookstore>"
    text=text+"<book>";
    text=text+"<title>Harry Potter</title>";
    text=text+"<author>J K. Rowling</author>";
    text=text+"<year>2005</year>";
    text=text+"</book>";
    text=text+"</bookstore>";
    var xmlDoc;
    try{
        xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.async  = false;
        xmlDoc.loadXml(text);
    }catch(e){
        // try{
            parse = new DOMParser();
            xmlDoc=parse.parseFromString(text,"text/xml");
        // }catch(e){
        // }
    }
    console.log(xmlDoc);
    elem_body = document.getElementsByTagName('body');
    // elem_body[0].appendChild(xmlDoc);
    var book = xmlDoc.getElementsByTagName('book');
    for (i=0;i<book.length;i++){
        console.log(book[i].firstChild.firstChild);
        alert(book[i].firstChild.firstChild.nodeValue);
        book[i].firstChild.firstChild.nodeValue = 'linning';
    }

    // 获取最后一个元素节点
    function get_lastchild(ele){
        x = ele.lastChild;
        while (x.nodeType!=1)
          {
          x=x.previousSibling;
          }
            return x;
        }
    // *************生成一段复杂的html出来*************


    /*
    <div id="navfirst">
        <ul id="menu">
            <li id="h"><a href="/h.asp" title="HTML 系列教程">HTML教程</a></li>
            <li id="x"><a href="/x.asp" title="XML 系列教程">XML教程</a></li>
            <li id="b"><a href="/b.asp" title="浏览器脚本系列教程">浏览器脚本</a></li>
            <li id="s"><a href="/s.asp" title="服务器脚本系列教程">服务器脚本</a></li>
            <li id="d"><a href="/d.asp" title=".NET (dotnet) 教程">dot net教程</a></li>
            <li id="m"><a href="/m.asp" title="多媒体系列教程">多媒体教程</a></li>
            <li id="w"><a href="/w.asp" title="网站构建手册">建站手册</a></li>
        </ul>
    </div>
    */
    var navfirst = document.createElement("div");
    navfirst.setAttribute('id','navfirst');
    var menu = document.createElement("ul");
    menu.setAttribute('id','menu');    
    navfirst.appendChild(menu)
    var list = Array();
    var list_ids = Array('h','x','b','s','d','m','w');
    var list_texts = Array('HTML教程','XML教程','浏览器脚本','服务器脚本','dot net教程','多媒体教程','建站手册')
    for (var i = 6; i >= 0; i--) {
        var current = document.createElement('li');
        current.setAttribute('id','')
        var current_a = document.createElement('a');
        current_a.setAttribute('href','/'+list_ids[i]+'.asp');
        current_a.setAttribute('title',list_texts[i]);
        current_a.appendChild(document.createTextNode(list_texts[i]));
        current.appendChild(current_a);
        list[i] = current;
        menu.appendChild(current);
    };
    document.getElementsByTagName("body")[0].appendChild(navfirst);

</script>

 

转载于:https://www.cnblogs.com/linksgo2011/p/3163666.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值