var form1 = Ext.create('Ext.form.Panel', {
                id: 'form1',
                frame: true,
                height: 200,
                autoScroll: false,
                //autoWidth:true,
                //  width:document.documentElement.clientWidth,
                bodyPadding: 5,
                fieldDefaults: {
                    labelWidth: 120, //标签宽度 
                    width: 450, //字段宽度   
                    labelAlign: 'left',                    blankText: '不允许为空',
                    //anchor: '50%',
                    margin: '10,0,0,0'
                },
                frame: true,                layout: 'form',
                reader: new Ext.data.JsonReader({ successProperty: 'success', root: 'item' }, 
                                        [{ name: 'quantity_per_year', mapping: 'quantity_per_year', type: 'string' },
                                         { name: 'quantity_per_day', mapping: 'quantity_per_day', type: 'string' },
                                         { name: 'stock', mapping: 'stock', type: 'string' },
                                         { name: 'transit', mapping: 'transit', type: 'string' },
                                         { name: 're', mapping: 're', type: 'string' },
                                        ]),                items: [
                {
                    frame: true,
                    xtype: 'textfield',
                    id: 'quantity_per_year',
                    name: 'quantity_per_year',
                    allowBlank: false, //是否允许为空  
                    fieldLabel: '年加工量(万吨)'
                }, {
                    frame: true,
                    xtype: 'textfield',
                    id: 'quantity_per_day',
                    name: 'quantity_per_day',
                    allowBlank: false, //是否允许为空  
                    fieldLabel: '正常日加工量(吨)'
                }
                ,
                {
                    frame: true,
                    id: 'stock',
                    name: 'stock',
                    xtype: 'textfield',
                    allowBlank: false, //是否允许为空  
                    fieldLabel: '期初库存(吨)'
                }, {
                    frame: true,
                    id: 'transit',
                    name: 'transit',
                    xtype: 'textfield',
                    allowBlank: false, //是否允许为空  
                    fieldLabel: '在途资源(吨)'
                }, {
                    frame: true,
                    xtype: 'textarea',
                    id: 're',
                    name: 're',
                    fieldLabel: '备注'
                }],                bbar: [{
                    text: '保存',
                    iconCls: 'button-save',
                    handler: SaveForm
                }
            , {
                text: '取消',
                iconCls: 'icon-reset',
                handler: ResetForm
            }
            ]            });
form1.form.load({});
后台传的JSON数据 为{"success":true,"item":[{"demand":null,"id":"710ff97d-8432-4433-9579-46e27e60ea49","modify":null,"quantity_per_day":"2222","quantity_per_year":"1111","re":"5555","stock":"3333","time":"2013-01","transit":"4444","unitid":"0","unitname":null}]}
哪出错了,怎么加载不出来呢

解决方案 »

  1.   

    你的这个Extjs form是通过什么请求去后台拿得数据?如果你要用后台数据来回填form表单,你可以这么写.
    还有一点,组件的id和name属性,不要写成一样。
    Ext.namespace(Ext.myform);
    Ext.myform.form = function(configData){
       Ext.myform.form.superclass.constructor.call(this,{
          id:configData.id,
          items:[
            {
               xtype:'textfield',
               labelField:'demand',
               value:config.demand
            }
          ]
       })
    }
    Ext.extend(Ext.myform.form,Ext.Panel(),{});
    Ext.onReady(function{
       Ext.Ajax.request({
       url:'',
       success:function(res){
          var jsonObj=Ext.util.JSON.decode(res);
          new Ext.myform.form(jsonObj);
       },
       failure:function(){}
    })})
      

  2.   

    form是不能直接读取数据并进行绑定的,form绑定数据是通过form.loadRecord()这个方法实现的,具体请查API