Javascript 解析字符串生成 XML DOM 对象。
Javascript 接收字符串生成 XML DOM 对象。
实测对 Firefox 、IE6 有效。
可用于解析 ajax 的服务器响应结果,也可用于解析自定义字符串。
1. [代码]函数 ppt模版
/**
* Parses DOM from XML text.<br />
*
* @author Typhoon.Free.Wolf
* @version 2014-02-28_15-51
* @param blDebugFlag
* - Debug flag: true, false.<br />
* @param strText
* - XML text to be parsed.<br />
*/
function parseFromString(blDebugFlag, strText)
{
var strFuncName = 'parseFromString(' + blDebugFlag + ', strText)';
var dom = null;
if (blDebugFlag) { alert('[S] ' + strFuncName); }
if (blDebugFlag) { alert('[01] ' + strText); }
var parser;
var str1dNames;
var intIdx;
var e1, e2;
var blActiveXOK;
try
{
if (null != strText)
{
if (window.DOMParser)
// Standard.
{
if (blDebugFlag) { alert('[02] window.DOMParser'); }
parser = new DOMParser();
if (blDebugFlag) { alert('[03] To parse.'); }
dom = parser.parseFromString(strText, 'text/xml');
if (blDebugFlag) { alert('[04] Parse OK:\n--------\n' + dom); }
}
else if (window.ActiveXObject)
// Strange, such as trident...
{
blActiveXOK = false;
str1dNames = ['MSXML2.DOMDocument.5.0',
'MSXML2.DOMDocument.4.0', 'MSXML2.DOMDocument.3.0',
'MSXML2.DOMDocument', 'Microsoft.XmlDom'];
for (intIdx = 0; intIdx < str1dNames.length; intIdx++)
{
try
{
if (blDebugFlag)
{ alert('[05_' + intIdx + '] ' + str1dNames[intIdx]); }
dom = new ActiveXObject(str1dNames[intIdx]);
if (null != dom)
{
blActiveXOK = true;
break;
}
}
catch (e2) {}
}
if (!blActiveXOK)
{
if (blDebugFlag)
{ alert('[!] [06] strFuncName:\n--------\n' + e2); }
}
else
{
if (blDebugFlag) { alert('[07] ActiveXObject:\n' + dom); }
dom.loadXML(strText);http://www.huiyi8.com/ppt/
if (blDebugFlag)
{ alert('[08] Parse OK:\n--------\n' + dom); }
}
}
else
{
alert ('[09] No suitable way found to parse!');
}
}
}
catch (e1)
{
if (blDebugFlag) { alert('[!] [10] strFuncName:\n--------\n' + e1); }
}
if (blDebugFlag) { alert('[E] ' + strFuncName); }
return dom;
}
Javascript 解析字符串生成 XML DOM 对象。的更多相关文章
- 使用Pull解析器生成XML文件和读取xml文件
有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...
- SAX解析和生成XML文档
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本人声明.否则将追究法律责任. 作者: 永恒の_☆ 地址: http://blog.csdn.net/chenghui031 ...
- 使用Pull解析器生成XML文件
有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...
- maven中使用dom4j解析、生成XML的简易方法
此片文章主要写一些关于如何在maven工程中使用dom4j来解析或生成XML的建议方法,实际可使用的写法不仅限于如下所写的样例代码.此处进攻快速入手和提供思路使用. 首先配置pom.xml中的依赖的包 ...
- js ajax 传送xml dom对象到服务器
客户端代码 1 <script> var isie = true; var xmlhttp = null; function createXMLHTTP() {//创建XMLXMLHttp ...
- java 解析并生成 XML
在 java 中使用 Dom4j 解析 XML 对 XML 文件的解析,通常使用的是 Dom4j 和 jdom 作为XML解析工具. 在此只介绍下 Dom4j 对 XML 文件的解析使用方法. 1. ...
- 【Python】 xml解析与生成 xml
xml *之前用的时候也没想到..其实用BeautifulSoup就可以解析xml啊..因为html只是xml的一种实现方式吧.但是很蛋疼的一点就是,bs不提供获取对象的方法,其find大多获取的都是 ...
- python xml文件解析 及生成xml文件
#解析一个database的xml文件 """ <databaselist type="database config"> <dat ...
- JavaScript基础15——js的DOM对象
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- Java学习之理解多态
Java 多态 多态是同一个行为具有多个不同表现形式或形态的能力.多态就是同一个接口,使用不同的实例而执行不同操作,多态性是对象多种表现形式的体现.例如:可以把人分为男人和女人,男人有做力气活的能力, ...
- 准备新的代码迁移到cnblogs
http://www.cnblogs.com/danghuijian/ http://www.cnblogs.com/danghuijian/
- UITableView点击背景
系统自定义的点击背景有时间觉得效果不好想换个 - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelect ...
- POJ 1386 单词接龙问题
题目大意: 给一堆字母,让它们进行接龙,要头对尾能够接的上,问有没有一种方法让所有成语都完成接龙 这道题实际上是在考虑是否存在一条欧拉通路,每个单词产生一条有向线段,由第一个字母指向最后一个字母 这道 ...
- json拼接含字符串变量的问题
json键值对,当值为字符串变量时,极易搞错,拼接务必注意.String str="文字信息";String json="{\"msg\":\&quo ...
- Flex嵌入HTML页面
这段时间一直在苦心研究Flex,今天突然想,我们平时都是把swf放到网页中,怎么才能把网页嵌入到Flex中呢?我查了一些资料,然后经过自己的不懈努力,终于搞定. 为了方便,写了个嵌入HTML页面的代理 ...
- iOS-bug·Failed to connect to github-production-release-asset-2e65be.s3.amazonaws.com port 443: Operation time out
在首次运行 react naticve 项目时, 遇到了如下的问题: Failed to connect to github-production-release-asset-2e65be.s3.am ...
- Java的vector可实现自动增长的数组
Vector维克多提供了向量类(vector)以实现类似动态数组的功能. 首先,在Java中并没有指针这样的概念 ,但如果正确灵活地使用指针又确实可以大大提高程序的质量.比如在c,c++中所谓的“动态 ...
- react 使用 eslint 的三种代码检查方案总结,多了解点--让代码更完美....
1.介绍 ESLint 是一个可扩展,每条规则独立,被设计为完全可配置的lint工具. 可以用来检测代码,避免低级错误 可以用来规范代码的开发风格,统一代码习惯. 2.为什么使用 ESLint ? 统 ...
- 中间件序列TDATASET为BUFFER演示代码
procedure SendStream(const AStream: TStream);var Buffer: array[0..4095] of Byte; // 每包最大4K StartPos, ...