我的单击操作调用这个方法,从servlet的部分数据已经显示在textfield 中了,还有一个部分数据是List的 需要显示在gridpanel中,DictInfoPanel = function(node, grid){
            //获得右侧tab对象
            Ext.Ajax.request({
                waitMsg : '读取数据',
                url : "/datadict/DataDictServlet?parameter="+node.id,
                method : "GET",
                callback : function(args, success, response) {
                var json = response.responseText;
                var json = eval("("+json+")");
                grid.getForm().findField('dataDictName').setValue(json.name);
                grid.getForm().findField('dataDictCode').setValue(json.code);
                if(success){
                    var panel = Ext.getCmp("dataDictCenterPanel");
                    var tab = panel.findById(node.id);
                    if(!tab){
                        tab = panel.add({
                            id: node.id,
                            xtype:"panel",
                            title:node.text,
                            closable:true,
                            layout:"fit",
                            items:[grid]
                        });
                    }
                    panel.setActiveTab(tab);
                }
            },
            scope: this
        });是需要在这里加上一个url么? 从servlet传递过来的数据就是List 的,到了ext不用转换能直接显示出来么?
var store = new Ext.data.Store({
                proxy: new Ext.ux.data.PagingMemoryProxy(underTheData),
                remoteSort:true,
                reader: new Ext.data.ArrayReader({ fields: [
                    {name: 'dataName', type: 'string'},
                    {name: 'dataCode', type: 'string'}
                ] })
            });

解决方案 »

  1.   

    给出你的后台返回的list数据格式
      

  2.   

    格式和这个就可以了。underTheData然后store.load(Ext.decode(data));
      

  3.   

    这是servlet中处理
    String paraId = request.getParameter("parameter");
    retStr = dataDictService.getBeanInfo(paraId);
    underDataString = dataDictService.getListById(paraId);retStr = dataDictService.getBeanInfo(paraId); retStr  是从bean转换过来的,用于显示在Ext.form.TextField的,underDataString = dataDictService.getListById(paraId);是从list转换过来的,格式是这种类型的[{"code":"datadict2","id":4,"name":"数据字典2","parentId":4},{"code":"professiontype_03","id":9,"name":"外语","parentId":4},{"code":"terminateReason_01","id":10,"name":"不可抗力","parentId":4}]
      

  4.   

    我这里的retStr 最初是 out.print(retStr);的,underDataString 怎么办呢? 再加个
    out.print(underDataString ); ?else {
    String paraId = request.getParameter("parameter");
    retStr = dataDictService.getBeanInfo(paraId);
    underDataString = dataDictService.getListById(paraId);
    System.out.println("0 - 0 "+underDataString);
    }
    }
    out.print(retStr);
    out.close();