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>