XML:可扩展标记语言,XML的标签是没有被定义过的,需要自行定义,宗旨是做数据传递,而不是做数据展示

1、xml文件最顶端做声明

<?xml version="1.0" encoding="utf-8"?>

2、所有标记必须成对出现(没有单标记)

3、严格区分大小写

4、允许嵌套,注意嵌套顺序

5、每个标签允许自定义属性,格式与html一致,属性的值必须使用双引号括起来

6、每一个xml文档有且只有一个根元素

<?xml version="1.0" encoding="utf-8"?>
<studentlist>
    <student>
        <name>tom</name>
        <age>18</age>
        <gender>男</gender>
    </student>
    <student>
        <name>jerry</name>
        <age>18</age>
        <gender>男</gender>
    </student>
    <student>
        <name>lily</name>
        <age>18</age>
        <gender>男</gender>
    </student>
</studentlist>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<input type="button" value="获取xml数据" onclick="getXML()">
<script>
    function getXML() {
        var xhr=new XMLHttpRequest();
        xhr.onreadystatechange=function () {
            if (xhr.readyState==4&&xhr.status==200){
                var result=xhr.responseXML;
                //result就是studentlist标签
                //使用getElementByTagName("标签名称")得到result内部所有这个标签名称组成的数组
                var student=result.getElementsByTagName('student');
                var name=student[1].getElementsByTagName("name")[0];
                console.log(name.innerHTML);
                console.log(result);
            }
        }
        xhr.open("get","student.xml",true);
        xhr.send();
    }
</script>
</body>
</html>
09-14 23:40