中易网

ExtJS之Ext.Ajax.request方法如何返回值的处理

答案:3  悬赏:40  
解决时间 2021-01-17 12:39
ExtJS之Ext.Ajax.request方法如何返回值的处理
最佳答案
其实你是对的。但是因为你传的是list所以才错。你应该传个Model对象。Model有有2个属性total、list,分别代表list.size()和list。让后再你Model Json化再传到后台。参考下面代码
JSONObject array = JSONObject.fromObjec(model);
HttpServletResponse resp = ServletActionContext.getResponse();
PrintWriter out = null;
System.out.println("++++"+array.toString());
try {
out = resp.getWriter();
out.print(array);
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}

这时你就可以用
var respText = Ext.util.JSON.decode(resp.responseText);然后你可以用alert输出respText.total和respText.list[0].tbSrsg.相信你看到输出结果会豁然开朗的。追问你所谓的Model是一个数组?还是?给Model是怎么赋值的呢?追答Model是一个类啊
public class Model{
private int total;
private List root; //Object 放你需要的那个类
public void setTotal(int total){
this.total=total;
}
.....
}
这个类必须这样有这样2个属性,名字不能改。
全部回答
  • 1楼网友:狂恋
  • 2021-01-16 16:18
后台返回的是一个list,的数据转换成的json串.
var respText = Ext.util.JSON.decode(resp.responseText);
经过这句后respText 应该是一个数组.
if(respTest.length)
alert(respText[0].tbSrsg)//试试这样行不
  • 2楼网友:十鸦
  • 2021-01-16 15:14
网上好多的json包 可以直接转换类的list 为json形式 后台就直接用out对象去set了 前台要看你的技术了 ext嘛
var ss=Ext.util.JSON.decode(resp.responseText);
ss点 什么什么的就可以用了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯