我的代码如下: //内经
var com_volume = new Ext.data.Store({//配置分组数据集
autoLoad :true,
proxy:new Ext.data.HttpProxy({url:'jsp/GetVolumeData.jsp'}),  
        reader:new Ext.data.JsonReader({  
            totalProperty:'total',  
            root:'stocks'  
        },  
        [  
          {name: 'id'},
          {name: 'volume1'},    
          {name: 'code'}  
                      
        ]),  
        failure : function() {    
        Ext.Msg.alert("数据加载失败!请检查");    
        } 
});combo      cls : 'key',
                xtype:'combo',
                fieldLabel: '内外卷',
                // width : 150,
allowBlank : true,
blankText : '请填写内外卷',
readOnly : true,
id : 'volume',
name : 'volume',
emptyText:'请填写内外卷',
triggeraction : 'all',
store :  com_volume,
diaplayField : 'volume1',
valueField : 'volume1',
mode : 'local',
// format:'Y-m-d',
                anchor:'90%'
我的JSON数据没问题,怎么取不出值来啊?请帮看看,谢谢!

解决方案 »

  1.   

      diaplayField : 'volume1',
                    valueField : 'id',
      

  2.   

    mode不应该是local,应该是remote吧
      

  3.   

          Class.forName("com.mysql.jdbc.Driver");   
            String url = "jdbc:mysql://127.0.0.1/testorder?useUnicode=true&characterEncoding=utf-8";   
        String user = "root";   
        String psw = "123456";   
        Connection conn = DriverManager.getConnection(url,user,psw); 
         
        Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
        
       
        String sql="select * from volumeset"; 
        ResultSet rs=stmt.executeQuery(sql);
        int i=1; 
        String result=null;
        String rowcount=null;
        JSONObject jsonObject = new JSONObject();   
        while(rs.next()) {
       
       jsonObject.put("id", (Object)rs.getString(1)); 
        jsonObject.put("volume1", (Object)rs.getString(2));     
       jsonObject.put("code", (Object)rs.getString(3));    
      
        if (i==1)
       {
            
             result = jsonObject.toString();
        }
        else
        {
             result += "," + jsonObject.toString();
        }
       
       i++;
       
       
       }
       
         rs.close(); 
       stmt.close(); 
       conn.close(); 
       rowcount=String.valueOf(i-1);
         response.getWriter().write("{total:"+rowcount+",stocks:[" + result + "]}");
      

  4.   


    这是或的的数据{total:2,stocks:[{"code":"A","volume1":"大纸","id":"1"},{"code":"B","volume1":"小纸","id":"2"}]} 
      

  5.   

    你数据放到store有问题。我现在没有代码给你看,晚上回去找找。
    你传了三个变量,而combo 只需要两个
      

  6.   

    var businessNatureField = new Ext.form.ComboBox( {
    id : WhspSfhBusinessPojo.businessNature.id,
    fieldLabel : "<font color=red>* </font>"+ WhspSfhBusinessPojo.businessNature.title,
    anchor : "95%",
    mode : "remote",
    readOnly : true,
    typeAhead : true,
    triggerAction : "all",
    disabled : fieldsfunc.businessNature.readonly,
    valueField : WhspBizNatureParaPojo.natureId.id,
    displayField : WhspBizNatureParaPojo.natureName.id,
    selectOnFocus : true,
    emptyText : "请选择...",
    allowBlank : false,
    store : new Ext.data.JsonStore( {
    id : "businessNatureStore",
    autoLoad : true,
    url : ctxpath + '/whsp/bizNature.do?method=getAllBizNature',
    root : 'data',
    totalProperty: 'totalSize',
    fields : [
    {name:WhspBizNatureParaPojo.natureId.id},
    {name:WhspBizNatureParaPojo.natureName.id}
    ]
    })
    });
    应该能看懂吧,我觉得那个store应该写成Ext.data.JsonStore
      

  7.   

    var businessNatureField = new Ext.form.ComboBox( {
    id : WhspSfhBusinessPojo.businessNature.id,
    fieldLabel : "<font color=red>* </font>"+ WhspSfhBusinessPojo.businessNature.title,
    anchor : "95%",
    mode : "remote",
    readOnly : true,
    typeAhead : true,
    triggerAction : "all",
    disabled : fieldsfunc.businessNature.readonly,
    valueField : WhspBizNatureParaPojo.natureId.id,
    displayField : WhspBizNatureParaPojo.natureName.id,
    selectOnFocus : true,
    emptyText : "请选择...",
    allowBlank : false,
    store : new Ext.data.JsonStore( {
    id : "businessNatureStore",
    autoLoad : true,
    url : ctxpath + '/whsp/bizNature.do?method=getAllBizNature',
    root : 'data',
    totalProperty: 'totalSize',
    fields : [
    {name:WhspBizNatureParaPojo.natureId.id},
    {name:WhspBizNatureParaPojo.natureName.id}
    ]
    })
    });
      

  8.   

    最后加一句看看
    response.getWriter().close();