您的位置:首页 > 其它

通过ajax来读取xml里面的数据,以及查询好数据如何写入xml里去 来供ajax读取

2010-06-07 17:59 861 查看
先用ajax发送异步请求到一个servlet或action
然后用action调用查询数据方法返回数据之后对数据进行迭代写入xml然后返回一个null就行了.

action代码
//设置xml头
response.setContentType ("text/xml; charset=UTF-8");
//设置不缓存 response.setHeader("cache-control","no-cache");

try
{
out=response.getWriter();
}
catch (IOException e)
{
e.printStackTrace();
}

Iterator ite=(Iterator)user.selectList(count);
Sysuser sysUser=null;

//写入xml
out.println("<root>");

while(ite.hasNext())
{
sysUser=(Sysuser)ite.next();

out.println("<sysUser>");
out.println("<username>");
out.println(sysUser.getUsername());
out.println("</username>");

out.println("<role>");
out.println(sysUser.getSysrole().getRoleName());
out.println("</role>");

out.println("<popedom>");
out.println(sysUser.getSysrole().getPopedom());
out.println("</popedom>");

out.println("</sysUser>");
}
out.println("</root>");
out.close();

return null;

javascript代码
//初始化xmlHttpRequest
function init()
{
try
{
xmlHttpRequest= new XMLHttpRequest();
}
catch(e1)
{
try
{
xmlHttpRequest=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
}
}
}

//发送异步请求
function sendRequest()
{

init();
var url="/ManpowerResource/sysUserAjaxListAction.do?count="+count;

xmlHttpRequest.open('Get',url,true);
//设置回调函数
xmlHttpRequest.onreadystatechange=processRequest;
xmlHttpRequest.send(null);
}
//回调函数
function processRequest()
{
//判断返回状态 if(xmlHttpRequest.readyState==4)
{
if(xmlHttpRequest.status==200)
{
//获得返回的xml数据信息
var xmlDom=xmlHttpRequest.responseXML;
//前面定义的xml标签为:sysUser所以这里就获得sysUser这个节点
var sysUserDom=xmlDom.getElementsByTagName("sysUser");
//解析xml代码...........
for(var i=0;i<sysUserDom.length;i++)
{
.......
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐