2008-05-11
JAVASCRIPT处理返回的XML字符串
当通过AJAX操作的时候,返回的XML如下 :
AJAX这个就不用去说怎么样操作了,下面这个函数只将返回字符串组成XML包的形式:
//装载字符串,将字符串组成XML的形式返回
下面一个方面就是将XML中我们需要的数据,处理数组,这样我们就可以在其它的地方使用:
//获得检测结果
<?xml version="1.0" encoding="gbk"?> <root> <checkresult> <%=result%> </checkresult> <checkresult> <%=message%> </checkresult> </root>其中返回两个内容,一个结果数,以及一个针对该结果数的消息。
AJAX这个就不用去说怎么样操作了,下面这个函数只将返回字符串组成XML包的形式:
//装载字符串,将字符串组成XML的形式返回
function loadXML(xmlString)
...{
var xmldoc;
try ...{
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
if(!xmldoc) xmldoc = new ActiveXObject("MSXML2.DOMDocument.3.0");
} catch(e)...{}
if(!xmldoc) ...{
return null;
} else ...{
xmldoc.async = "false";
xmldoc.loadXML(xmlString);
if(xmldoc.parseError.errorCode == 0 ) ...{
return xmldoc;
} else ...{
return null;
}
}
}但其中需要注意一点,不能够直接利用返回得到的字节流,因为他们不属于字符串,这个时候需要将得到的字节流转换为字符串,才可以操作成功。我本人就遇到这个问题,直接操作就会出错,但我把这里传入的参数改为对应的XML字符串就可以,但我现在还不知道怎么样将字节流转换为字符串,因为总是要内网外网的切换做测试,挺麻烦的。
下面一个方面就是将XML中我们需要的数据,处理数组,这样我们就可以在其它的地方使用:
//获得检测结果
function getURLResult(URL)
...{
var url = URL;
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
xmlhttp.open("POST", url, false);
xmlhttp.send();
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");
xmlDoc = loadXML(bytes2BSTR(xmlhttp.responseBody));
var NodeLists = xmlDoc.selectNodes("/root/checkresult");
var result = new Array();
for(var i=0;i<NodeLists.length;i++)...{
result[i] = NodeLists[i].text;
}
return result;
}在前台页面,就可以将需要的结果进行操作了。
发表评论
- 浏览: 30494 次
- 性别:

- 来自: 大连

- 详细资料
搜索本博客
我的相册
strutsWorkflow
共 3 张
共 3 张
最近加入圈子
链接
- 冰封太子
- 个人博客
- eclipse-API 函数
- eclipse-SWT资源
- Eclipse-下载
- hibernate-官方网站
- html-教程与代码
- html-教程与代码
- html-蓝色理想
- html-语言教程
- Javascript-基础教程
- PowerDesigner视频
- 流星絮语 JAVA学习笔记
- AppServNetword
- JDBC、SQLJ 的Oracle 驱动
- BeanSoft's Java Blog
- 面试时候经常会问的一些问题(不断补充中)
- Hibernate 3入門
- java学习
- 上帝的笔记本
- xiao
- 视频
- 尚学堂
- Intellij Idea下的iBatis
- vssplugin
- XDoclet最新下载包
- prototype.js官方
- 在线视频
- Ruby
- Aptana Studio
- 面试题集合
- 徐风城
- 最好的java源码
- java blog
最新评论
-
JSP购物车实例讲解
能不能写写struts2做成的购物车模块,把购物车放在session里面?
-- by chucai -
Struts 源码学习之Action ...
initChain()真是看不明白用了Commons Chain来搞了个CoR模 ...
-- by dvdface -
IntelliJ IDEA使用技巧一 ...
学习了!
-- by ziscloud -
ssh分页实例
else if ("next".equals(state)) 可以无止境的n ...
-- by figeonline -
js应用
这文章说什么的啊?能不能给个效果图啊?晕哎
-- by zhangzldipan






评论排行榜