我尝试使用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'
}]
}];
答案 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);