JS解析XML文件和XML字符串

摘要:
有关详细信息,请单击JS解析XML文件并复制代码loadXML=function{varxmlDoc=null;//确定浏览器类型。//如果(!Window.DOMParser&&Window.ActiveXObject){//Window.DOMParser确定它是否是非IE浏览器varxmlDomVersions=['MSXML.2.DOMDocument.6.0','MSXML.2,则支持IE浏览器。DOMD文件。3.0英寸,微软。XMLDOM'];对于{try{xmlDoc=newActiveXObject;xmlDoc.async=false;xmlDoc.loadXML;//loadXML方法加载xml字符串中断;}Catch{}}//支持Mozilla浏览器elseif{try{/*DOMParser对象解析XML文本并返回XMLDocument对象。*若要使用DOMParser,请使用不带参数的构造函数来实例化它,然后调用其parseFromString()方法*parseFromString参数text:要解析的XML标记参数contentType文本的内容类型*可以是“text/XML”、“application/XML”或“application/xhtml+xml”之一。注意,不支持“text/html”*/domParser=newDOMParser();xmlDoc=domParser。parseFromString;}catch{}}else{returnnull;}returnxmlDoc;}复制代码测试XML复制代码˂?

详细内容请点击

JS解析XML文件

复制代码
<script type='text/javascript'>
loadXML = function(xmlFile){
var xmlDoc=null;
//判断浏览器的类型
//支持IE浏览器
if(!window.DOMParser && window.ActiveXObject){
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
for(var i=0;i<xmlDomVersions.length;i++){
try{
xmlDoc = new ActiveXObject(xmlDomVersions[i]);
break;
}catch(e){
}
}
}
//支持Mozilla浏览器
else if(document.implementation && document.implementation.createDocument){
try{
/* document.implementation.createDocument('','',null); 方法的三个参数说明
* 第一个参数是包含文档所使用的命名空间URI的字符串;
* 第二个参数是包含文档根元素名称的字符串;
* 第三个参数是要创建的文档类型(也称为doctype)
*/
xmlDoc = document.implementation.createDocument('','',null);
}catch(e){
}
}
else{
return null;
}

if(xmlDoc!=null){
xmlDoc.async = false;
xmlDoc.load(xmlFile);
}
return xmlDoc;
}
</script>
复制代码

JS解析XML字符串

复制代码
<script type='text/javascript'>
loadXML = function(xmlString){
var xmlDoc=null;
//判断浏览器的类型
//支持IE浏览器
if(!window.DOMParser && window.ActiveXObject){ //window.DOMParser 判断是否是非ie浏览器
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
for(var i=0;i<xmlDomVersions.length;i++){
try{
xmlDoc = new ActiveXObject(xmlDomVersions[i]);
xmlDoc.async = false;
xmlDoc.loadXML(xmlString); //loadXML方法载入xml字符串
break;
}catch(e){
}
}
}
//支持Mozilla浏览器
else if(window.DOMParser && document.implementation && document.implementation.createDocument){
try{
/* DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。
* 要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 parseFromString() 方法
* parseFromString(text, contentType) 参数text:要解析的 XML 标记 参数contentType文本的内容类型
* 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。
*/
domParser = new DOMParser();
xmlDoc = domParser.parseFromString(xmlString, 'text/xml');
}catch(e){
}
}
else{
return null;
}

return xmlDoc;
}
</script>
复制代码

测试XML

复制代码
<?xml version="1.0" encoding="utf-8" ?>
<DongFang>
<Company>
<cNname>1</cNname>
<cIP>1</cIP>
</Company>
<Company>
<cNname>2</cNname>
<cIP>2</cIP>
</Company>
<Company>
<cNname>3</cNname>
<cIP>3</cIP>
</Company>
<Company>
<cNname>4</cNname>
<cIP>4</cIP>
</Company>
<Company>
<cNname>5</cNname>
<cIP>5</cIP>
</Company>
<Company>
<cNname>6</cNname>
<cIP>6</cIP>
</Company>
</DongFang>
复制代码

使用方法
var xmldoc=loadXML(text.xml)
var elements = xmlDoc.getElementsByTagName("Company");
for (var i = 0; i < elements.length; i++) {
var name = elements[i].getElementsByTagName("cNname")[0].firstChild.nodeValue;
var ip = elements[i].getElementsByTagName("cIP")[0].firstChild.nodeValue;
}

更多内容请点击

免责声明:文章转载自《JS解析XML文件和XML字符串》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇VMware Workstation 14 Pro永久激活密钥Cisco交换机里IP和MAC地址互查找出对应端口下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js整数类型

<!DOCTYPEhtml> <htmllang="en"> <head> <metacharset="UTF-8"> <metaname="viewport"content="width=device-width,initial-scale=1.0"> <title>Documen...

Android中R.java各种错误修复

1.Android R.java文件丢失的问题 R.java这个文件是会自动生成的。但是有时候你写错xml文件的时候,R.java是不会自动生成对应的值。这个时候我们会很习惯去clean一下这个项目,这个时候会突然发现,R.java竟然不见了。        这个时候的你肯定非常的气愤,你可能会拼命在网上找答案,网上会有很多答案告诉你 右键项目-...

js延迟执行函数

转自:http://zou-jiao.iteye.com/blog/1606872 在js中,延迟执行函数有两种:setTimeout和setInterval,用法如下: setTimeout("test()","2000"); //2000毫秒后执行test()函数,只执行一次。 setInterval("test()","2000"); //每隔20...

Java中通过脚本引擎调用js函数

1 import java.io.*; 2 importjavax.script.Invocable; 3 importjavax.script.ScriptEngine; 4 importjavax.script.ScriptEngineManager; 5 importjavax.script.ScriptException; 6 importorg....

jQuery(一)

一、什么是 jQuery jQuery 是 js 的一个库,封装了我们开发过程中常用的一些功能,方便我们调用,提高开发效率。 js库是把我们常用的功能放到一个单独的文件中,我们用的时候,直接引用到页面里即可。 关于jQuery的相关资料: 官网:http://jquery.com/ 官网API文档:http://api.jquery.com/ 汉化API...

Ajax:读取响应首部

   有时,只是想“ping”一下服务器,验证服务器是否正常运行。此时,只需要读取服务器发出的响应首部,而忽略内容。通过读取响应首部,可以得出content-Type(内容类型)、Content-Length(内容长度)。甚至LastModified(最后一次修改)的日期。 <html xmlns="http://www.w3.org/1999/xh...