ghtcool1207
2011-12-28 09:52 浏览 187
已采纳

EXtjs与后台的交互

最近刚学Extjs,有几点不明白,js部分文件如下:

Ext.onReady(function(){

                       var proxy=new Ext.data.HttpProxy({url:'getInfo.action'}); //这里的url不是很明白

                        var reader=new Ext.data.JsonReader(
            {
            },[
                {name: 'Id'} ,
                {name: 'name'} ,
                {name: 'age'}
            ]
        );
    //构建Store  
        var store=new Ext.data.Store(    {
          proxy:proxy,
          local:true,
          reader:reader
       });

看到的资料请求的都是URL,不明白这个url对应的Action方法是怎么写的,(本人要做一个简单的列表)!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

5条回答 默认 最新

  • 已采纳
    iteye_9208 iteye_9208 2011-12-28 12:21

    附上 action里面的代码
    [code="java"]
    //列表的数量
    List list=new ArrayList();
    int totalCount=list.size();
    try {
    JSONArray jsonObject = JSONArray.fromObject(list);
    String jsonData = "{totalCount:" + totalCount + ",rows:" + jsonObject.toString() + "}";
    response.setContentType("text/json;charset=UTF-8");
    //输出为json的格式
    response.getWriter().print(jsonData);
    } catch (IOException e) {
    e.printStackTrace();
    }
    return null;
    [/code]

    点赞 评论 复制链接分享
  • iteye_9208 iteye_9208 2011-12-28 11:44

    action后台里面应该返回一个json格式的数据给前台

    点赞 评论 复制链接分享
  • xiaohuxiaoyu xiaohuxiaoyu 2011-12-28 17:08

    建议你看看几个类,store,jsonStore,arrayStore,simpleStore,对它们有个了解,这些都是在工作经常用到的

    点赞 评论 复制链接分享
  • iteye_9208 iteye_9208 2011-12-29 09:07

    可能是你前台解析的时候解析的方式不对:
    store里面reader的方式不对,你再试试
    reader: new Ext.data.JsonReader(
    { root: 'rows', totalProperty: 'totalCount', id: 'MID' },
    ['Id','name','age']
    )

    点赞 评论 复制链接分享
  • wuxiaoxu666 wuxiaoxu666 2011-12-29 14:02

    首先把数据放到
    hm.put("id", "") ;“”是你放入的数据
    hm.put("name", "") ;
    hm.put("age", "") ;
    把多个hm放到list中
    list.add(hm);

    JSONArray ary = new JSONArray(list);
    JSONObject json = new JSONObject();
    json.put("resultSize", resultSize);
    json.put("dataList", ary);
    writeJson(response, json.toString());
    //-------------------
    public static void writeJson(HttpServletResponse response, String json){
    try {
    response.setContentType("text/html;charset=UTF-8");
    response.getWriter().print(json);
    } catch (Exception e) {
    System.out.println(e);
    }
    }
    这样就可以了

    点赞 评论 复制链接分享

相关推荐