首页 > ExtJS4 中 setValue 的问题

ExtJS4 中 setValue 的问题

ExtJS 4.2.1

{
    xtype: 'textfield',
    emptyText: '标题',
    id: 'tf11',
    name: 'title',
    width: '100%',
    anchor: '100%',
    fieldLabel: '标题',
    hideLabel: true,
    allowBlank: false
}

这是我的textfield,我想做的只是手动设定其里面的内容,

Ext.getCmp('tf11').setValue('123');

可是执行上面这条语句并不见效果,但是能看到

为什么setValue没效果,有人碰到过吗,如何解决?


这个是因为你的控件还没有被渲染出来,如果是在form中加载的, 需要用form的afterrender( Ext.Component this, Object eOpts )这个事件,就可以了.
var taskInfoForm = Ext.widget('form', {
id: 'taskInfoForm',
layout: 'vbox',
title:'任务信息',
autoScroll:true,
bodyBorder: 0,
fieldDefaults: {labelAlign:'right', labelWidth:100},
defaults: {margins: '5 0 0 0'},
listeners: {
afterrender:function (_this, eOpts) {
_this.getForm().findField('tf11').setValue('1');
}
}
//..............
});

【热门文章】
【热门文章】