无法在Ext.window.Window中设置值

时间:2012-08-08 20:44:39

标签: ajax extjs4

我尝试使用Ext.ComponentManager设置值,但它不起作用。这是我的代码..我想从id设置firstname的值。我从服务器获取id值,但无法在firstname和lastname字段中设置它。请帮忙。

Ext.define('sample.view.student.Edit', {
extend : 'Ext.window.Window',
alias : 'widget.studentedit',




requires : ['Ext.form.Panel', 'Ext.form.field.Text',
        'Ext.form.field.ComboBox'],




title : 'student dtls',
layout : 'fit',
autoShow : true,
width : 280,




iconCls : 'icon-user',




initComponent : function() {
    this.items = [{
        xtype : 'form',
        padding : '5 5 0 5',
        border : false,
        style : 'background-color: #fff;',




        fieldDefaults : {
            anchor : '100%',
            labelAlign : 'left',
            allowBlank : false,
            combineErrors : true,
            msgTarget : 'side'
        },




        items : [ {
                    xtype : 'textfield',
                    name : 'studentId',
                    fieldLabel : 'studentId',
                    listeners : {
                        blur : function() {
                            //    fnDataForm(this.value);
                            Ext.Ajax.request({
                                url : 'student/fetchDtls.action',
                                params : {
                                    guiInstrId : this.value
                                },
                                success : function(response, opts) {
                                    var jsonResp = Ext
                                            .decode(response.responseText);




                                    console.dir(jsonResp);
                                    console.log(jsonResp.studentFirstName);
                                    // How to set jsonResp.studentFirstName value in below textfield ?
                                    this.up('form').getForm().getValues().studentFirstName.setValue(jsonResp.studentFirstName);
                                },
                                failure : function(response, opts) {
                                    console
                                            .log('server-side failure with status code '
                                                    + response.status);
                                }
                            });
                        }
                    }




                }, {
                    xtype : 'textfield',
                    name : 'studentFirstName',
                    fieldLabel : 'student First Name'




                }, {
                    xtype : 'textfield',
                    name : 'studentLastName',
                    fieldLabel : 'student Last Name'




                }]
    }];

1 个答案:

答案 0 :(得分:2)

我不得不把它放在我的代码中然后它就像魅力一样。让我知道是否有人也有同样的问题..它也可能对你有所帮助......

{
xtype: 'textfield',
name: 'studentFirstName',
itemId: 'studentfirstname',
fieldLabel: 'student First Name'
}

..

 var form = this.up('form'),
  sfn = form.down('#studentfirstname');

sfn.setValue(sonResp.studentFirstName);