用ajax时,如何在jsp页面获取json类型数据 15
我的程序时SSH框架的,AJAX用的是dwr框架,在Action获取的是一个list类型的数据,那么在Action中转换成json形式的数据后通过什么方式返回到页面呢,在...
我的程序时SSH框架的,AJAX用的是dwr框架,在Action获取的是一个list类型的数据,那么在Action中转换成json形式的数据后通过什么方式返回到页面呢,在页面上又如何接收json形式的数据呢?我的Action返回方式是:public ActionForward search(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
ArrysformForm arrysformForm = (ArrysformForm) form;// TODO Auto-generated method stub
ActionForward af=null;
PrintWriter out = response.getWriter();
List list=dataBiz.serchAll();
JSONObject jso= JsonConvert.generate(list); //将list转换成json形式
out.print(jso);
out.flush();
return af;
}
页面上通过这种方式获取,没有任何反应,只是把json类型的数据显示在了空白页面上function test()
{
//alert("test调用");
var rangeValue = xmlHttp.responseText;
alert(rangeValue);
if(rangeValue==null)
{
alert("为空");
}else{
alert("有值");
}
var json = eval(rangeValue);
for(var j in json) {
alert(json[j]['age']);
alert(json[j]['names']);
}
}请各位高手,帮帮忙吧,困惑了很久了,要详细点啊
alert(rangeValue);这个根本就不能弹出,也就是说这个没值,我问的是如何获取Action中返回的json形式的数据,页面上的js函数该如何调用,要详细点呦,谢谢了 展开
HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
ArrysformForm arrysformForm = (ArrysformForm) form;// TODO Auto-generated method stub
ActionForward af=null;
PrintWriter out = response.getWriter();
List list=dataBiz.serchAll();
JSONObject jso= JsonConvert.generate(list); //将list转换成json形式
out.print(jso);
out.flush();
return af;
}
页面上通过这种方式获取,没有任何反应,只是把json类型的数据显示在了空白页面上function test()
{
//alert("test调用");
var rangeValue = xmlHttp.responseText;
alert(rangeValue);
if(rangeValue==null)
{
alert("为空");
}else{
alert("有值");
}
var json = eval(rangeValue);
for(var j in json) {
alert(json[j]['age']);
alert(json[j]['names']);
}
}请各位高手,帮帮忙吧,困惑了很久了,要详细点啊
alert(rangeValue);这个根本就不能弹出,也就是说这个没值,我问的是如何获取Action中返回的json形式的数据,页面上的js函数该如何调用,要详细点呦,谢谢了 展开
4个回答
展开全部
这个问题我也遇到过
这么写就好了
var obj = eval('(' + rangeValue + ')');
alert(obj[0].age);
试下去吧
好使给分哦~
这么写就好了
var obj = eval('(' + rangeValue + ')');
alert(obj[0].age);
试下去吧
好使给分哦~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把var json = eval(rangeValue);
换成eval("var json = " + rangeValue) ;
换成eval("var json = " + rangeValue) ;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var json = eval(rangeValue);
//for(var j in json) {
alert(json[0].age);
alert(json[0].names);
// }
//for(var j in json) {
alert(json[0].age);
alert(json[0].names);
// }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
getJSON()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询