您当前的位置: 首页 > 学无止境 > JS经典实例 网站首页JS经典实例
javascript学习笔记-XML
发布时间:2018-04-05 18:21:17编辑:雪饮阅读()
Xml对象的创建与元素的创建和获取
//创建xml对象
//参数1为命名空间,我们这里不使用命名空间
//参数2为xml的根标签
//参数3为文档声明
var xmlDom=document.implementation.createDocument('','root',null);
//获取根标签
/*
alert(xmlDom.documentElement.tagName);
alert(xmlDom.getElementsByTagName('root')[0].tagName);
*/
//创建xml节点
/*
var user=xmlDom.createElement("user");
xmlDom.documentElement.appendChild(user);
alert(xmlDom.getElementsByTagName('user')[0].tagName);
*/
同步加载外部xml文件并读取节点值(仅火狐兼容)
Var xmlDom=document.implementation.createDocument('','root',null);
//关闭默认的异步
xmlDom.async=false;
//载入外部xml文件
xmlDom.load("NewFile.xml");
//读取xml节点
var user=xmlDom.getElementsByTagName("user")[0];
alert(user.firstChild.nodeValue);
alert(user.textContent);
异步加载外部xml文件并读取节点值(仅火狐兼容)
var xmlDom=document.implementation.createDocument('','root',null);
//监听xml文档载入完毕事件
xmlDom.onload=function(){
//读取xml节点
var user=xmlDom.getElementsByTagName("user")[0];
alert(user.firstChild.nodeValue);
alert(user.textContent);
}
//载入外部xml文件
xmlDom.load("NewFile.xml");
通过DOMParser对象创建xmlDom及xml元素的读取
//创建DOMParser对象
var xmlParser=new DOMParser();
//字符串形式的xml
var xmlStr="<root><user>杜敏捷</user><love>雪饮</love></root>";
//装载xml
var xmlDom=xmlParser.parseFromString(xmlStr,"text/xml");
//读取xml元素
var user=xmlDom.getElementsByTagName("user")[0];
alert(user.textContent);
alert(user.firstChild.nodeValue);
DOMParser与XMLSerializer对象配合可以使得xml对象序列化为字符串
var xmlParser=new DOMParser();
var xmlStr="<root>\n\t<user>杜敏捷</user>\n\t<love>雪饮</love>\n</root>";
var xmlDom=xmlParser.parseFromString(xmlStr,"text/xml");
//序列化xml
var serializer=new XMLSerializer();
var xml=serializer.serializeToString(xmlDom);
alert(xml);
获取错误信息
当一个待xml文档有错误时候,那么解析的时候也就会报错,此时火狐(不同的浏览器会有不同的错误数据格式)会抛出一个错误信息以另外一个xml格式的形式
var xmlParser=new DOMParser();
var xmlStr="<root>\n\t<user>杜敏捷<user>\n\t<love>雪饮</love>\n</root>";
var xmlDom=xmlParser.parseFromString(xmlStr,"text/xml");
//获取错误信息
var errors=xmlDom.getElementsByTagName("parsererror");
alert("错误信息:"+errors[0].textContent);
关键字词:javascript,xml