ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

XML操作实验

2020-12-08 09:32:44  阅读:270  来源: 互联网

标签:XML xmlFile write bookList 实验 var 操作 document xmlDoc


XML操作实验

实验内容:
注意:以下代码均只支持IE,请在IE浏览器或者QQ浏览器兼容模式下使用。
如需修改,请自行修改读取XML文件的函数loadXML()

1编写程序,解析score.xml文件,要求输出的结果如图1所示。
图1  程序运行结果

score.xml

<?xml version="1.0" encoding="UTF-8"?>
<score>
	<name>
	        <alias>张三</alias>
		<math>89</math>
		<english>90</english>
	</name>
	<name>
		<alias>李四</alias>
		<math>92</math>
		<english>87</english>
	</name>
	<name>
		<alias>王五</alias>
		<math>95</math>
		<english>90</english>
	</name>
</score>

代码:

//请自行添加到HTML文件进行相应尝试
<script>
        window.onload=function useScoreXml(){
            var xmlFile="./score.xml";
            var xmlDoc=loadXML(xmlFile);
            var scoreList=xmlDoc.documentElement.getElementsByTagName("name");
            document.write("<table>");
            for(var i=0;i<scoreList.length;i++)
            {
                document.write("<tr>");
                var attList=scoreList[i].childNodes;
                for(var j=0;j<attList.length;j++)
                {
                    document.write("<td>"+attList[j].text+"</td>");
                }
                document.write("</tr>");
            }
        }

        //读取XML文件,只支持IE
        function loadXML(xmlFile) {
            var xmlDoc;
            xmlDoc= new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.async = false;
            xmlDoc.load(xmlFile);
            return xmlDoc;
        }
 </script>

实际运行结果:
在这里插入图片描述

2、编写程序,修改下面的XML文件Book.xml,要求:
(1)为每一个book元素添加一个author子元素,元素内容自定。
(2)修改title元素的值,在文本内容的后面添加文本“(电子工业出版社)”。

例如:
<title> Java面向对象编程</title>      变为:
<title> Java面向对象编程(电子工业出版社)</title>

(3)删除原有的第三个元素。
(4)为每一个book元素添加一个category属性子元素,元素内容自定,如:
(5)使用DOM接口,javascript语言实现。
book.xml

<?xml version="1.0" encoding="utf-8" ?>
<books>
	<book>
		<title>Java面向对象编程</title>
		<author>孙卫琴</author>
	</book>
	<book>
		<title>JSP动态网页编程技术</title>
		<author>李伟民</author>
	</book>
	<book>
		<title>精通Hibernate</title>
		<author>刘洋</author>
	</book>
</books>

代码:

//请添加到相应的HTML文件进行尝试
<script>
        window.onload=function useBookXml(){
            var xmlFile="./Book.xml";
            var xmlDoc=loadXML(xmlFile);
            var x=xmlDoc.documentElement;
            var bookList=xmlDoc.getElementsByTagName("book");
            for(var i=0;i<bookList.length;i++)
            {
                //为每一个book元素添加一个author子元素
                var newNode=xmlDoc.createElement("author");
                var textNode=xmlDoc.createTextNode("The Second Author Bai");
                newNode.appendChild(textNode);
                bookList[i].appendChild(newNode);

                //修改title元素的值
                // var NewNode=xmlDoc.createElement("book");
                var newtextNode=xmlDoc.getElementsByTagName("title")[i].text+"(电子工业出版社)";
                // var newTitle=xmlDoc.createElement("title");
                // newTitle.appendChild(newtextNode);
                // NewNode.appendChild(newTitle);
                bookList[i].childNodes[0].text=newtextNode;
                // x.replaceChild(NewNode,y);

                //删除第三个元素
                if(i==2){
                    var y=bookList[i];
                    y.parentNode.removeChild(y);
                }

                //添加属性
                bookList[i].setAttribute("category","computer");
            }
            //重新加载数组
            var bookList=xmlDoc.getElementsByTagName("book");
            document.write("<table>");
            for(var i=0;i<bookList.length;i++)
            {
                document.write("<tr>");
                var attList=bookList[i].childNodes;
                for(var j=0;j<attList.length;j++)
                {
                    document.write("<td>"+attList[j].text+"</td>");
                }
                document.write("<td>"+"category属性:"+bookList[i].getAttribute("category")+"</td>");
                document.write("</tr>");
            }
        }

        //读取XML文件,只支持IE
        function loadXML(xmlFile) {
            var xmlDoc;
            xmlDoc= new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.async = false;
            xmlDoc.load(xmlFile);
            return xmlDoc;
        }

    </script>

运行结果:
在这里插入图片描述

标签:XML,xmlFile,write,bookList,实验,var,操作,document,xmlDoc
来源: https://blog.csdn.net/xanxus555/article/details/110850062

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有