整个文档是一个文档节点 每个XMl标签是一个元素节点 包含在xml标签内的文本是文本节点 每个xml属性是一个属性节点 注释属于一个注释节点 XML 文档形成了一种树结构,它从“根部”开始,然后扩展到“枝叶”。 <?xml version="1.0" encoding="utf-8"?>//声明版本和字符集 <root>//根元素 <child> <subchild>.....</subchild> </child> </root> ps: xml的主要作用是为了信息传递 xml必须有根元素 所有的xml标签必须由关闭标签 xml对大小写敏感 xml必须正确的嵌套 xml属性加引号
//创建文档 var xmldoc=document.implementation.createDocument('','',null); //是否异步,true同步,false异步 xmldoc.async=false; //xml文件 xmldoc.load('1.xml');
var str="<?xml version='1.0' ..........."; //创建文档对象 var parser=new DOMParser();//创建文档对象 var xmldoc=parser.parser.parserFromString(str,'text/xml')
代码部分:
|
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js解析xml文档</title>
</head>
<body>
<script type="text/javascript">
//创建文档
var xmlDoc=document.implementation.createDocument("","",null);
//是否异步 true同步 false 异步
xmlDoc.async=false;
//xml文件
xmlDoc.load("1.xml");
//解析文档中的内容
// console.log(xmlDoc);
//获取文档中标签元素对象
var names = xmlDoc.getElementsByTagName('name');
// console.log(names);
var arr = [];
for (var i = 0; i < names.length; i++) {
arr[arr.length] = names[i].innerHTML;
};
console.log(arr);
//获取属性
console.log(names[0].getAttribute('class'));
</script>
</body>
</html>
xml
<?xml version='1.0' encoding='utf-8'?>
<movies>
<movie>
<name class='iloveyou'>辩护人</name>
<country>韩国</country>
</movie>
<movie>
<name>V字仇杀队</name>
<country>美国</country>
</movie>
<movie>
<name>盗梦空间</name>
<country>美国</country>
</movie>
</movies>
代码解析xml字符串:
|