首頁  >  問答  >  主體

javascript - 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没效果,有人碰到过吗,如何解决?

阿神阿神2773 天前597

全部回覆(1)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-10 13:10:55

    这个是因为你的控件还没有被渲染出来,如果是在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');
    }
    }
    //..............
    });

    回覆
    0
  • 取消回覆