如何使用MVC在加载时填充Extjs表单

时间:2014-04-03 17:39:19

标签: extjs4

我一直在面对      在MVC中填充extjs表单时出现问题。      我的要求是当我点击"查看个人资料"      它应该显示用户详细信息,如firstname      表格中的姓氏和姓氏。我无法入住     从服务器返回json数据的表单。      请告诉我如何在加载时填充表单。

这是我的商店

    Ext.define('EManage.store.UserStore', {
        extend: 'Ext.data.Store',
        model: 'EManage.model.UserModel',    
        storeId: 'userstore',    



     proxy: {

            type: 'ajax',

            url : 'http://localhost:8080/Users/viewprofile.do?method=ViewProfileForward',  //the above action  returns user details in json object

         reader: {
                    type: 'json',
                    root: 'items'
                    }
              },
        autoLoad: true,


    });

这是我的模特

    Ext.define('EManage.model.UserModel', {
        extend : 'Ext.data.Model',
        fields : [  
                   'firstname', 
                   'lastname', 
                    ]

       });

以下是我的观点:

    Ext.define('EManage.view.emodules.myProfile.UserProfile', {

                extend: 'Ext.form.Panel',
            xtype: 'form',


                frame: true,
            title: 'View Profile',
            bodyPadding: 10,
                autoScroll:true,
            width: 355,

            fieldDefaults: {
                    labelAlign: 'right',
                    labelWidth: 115,
                    msgTarget: 'side'
            },

                initComponent: function() {
                    this.items = [{
                        xtype: 'fieldset',
                    title: 'View Profile',
                    defaultType: 'textfield',
                    defaults: {
                        anchor: '100%'
                    },
                    items: [
                            { allowBlank:false, fieldLabel: 'First Name', name: 'firstname'},
                        { allowBlank:false, fieldLabel: 'Last Name', name: 'lastname'},

                        ]
                },

                   ];

                   this.callParent();

            },
         }]
         });

1 个答案:

答案 0 :(得分:0)

请勿忘记在模板中指定每个字段的名称,例如模型中指定的字段:

items: [{
           fieldLabel: 'First Name',
           xtype: 'textfield',
           name: 'firstname'
        }, {
           fieldLabel: 'Last Name',
           xtype: 'textfield',
           name: 'lastName'
        }]