获取对Extjs中itemId的引用
我有这样一个窗口类:获取对Extjs中itemId的引用,extjs,Extjs,我有这样一个窗口类: Ext.define('EMS.tf.alerts.alerts.view.AlertWindow', { extend: 'Ext.window.Window', alias: 'widget.ems-alerts-window', height: 220, width: 600, alertTpl: undefined, autoScroll: true, selectedRecord: undefined,
Ext.define('EMS.tf.alerts.alerts.view.AlertWindow', {
extend: 'Ext.window.Window',
alias: 'widget.ems-alerts-window',
height: 220,
width: 600,
alertTpl: undefined,
autoScroll: true,
selectedRecord: undefined,
title: undefined,
atext: undefined,
// @private
initComponent: function() {
var me = this;
Ext.apply(me, {
tpl: me.alertTpl,
listeners: {
show: function() {
Ext.create('Ext.Container', {
renderTo: 'alertContainer',
itemId: 'buttonContainer',
items : [{
xtype: 'button',
cls: 'ackbtn',
text : 'Acknowledge',
name: 'ackButton',
itemId: 'renderbutton'
},{
xtype: 'button',
cls: 'attchmntbtn',
text : 'Attachment',
name: 'attButton',
itemId: 'renderattachmntbutton'
}]
});
}
},
title: me.title
});
me.callParent();
}
});
我想使用itemId“renderattachmntbutton”获取对按钮“附件”的引用。如何做到这一点
我尝试了windowobject.down(“#renderattachmntbutton”),但仍然不起作用。我可以获得对放置在init函数之前的项的引用,但不是这样。您知道需要做什么来获取对该按钮的引用吗?itemId可以与父项的getComponent()调用一起使用,例如容器和面板。如果您将容器上的itemId更改为一个id属性。然后,您可以访问您的子项,如下所示:
Ext.getCmp('buttonContainer').getComponent('renderattachmntbutton');
这只是一种可能的方式,还有其他方式 itemId可以与父项的getComponent()调用一起使用,如容器和面板。如果您将容器上的itemId更改为一个id属性。然后,您可以访问您的子项,如下所示:
Ext.getCmp('buttonContainer').getComponent('renderattachmntbutton');
这只是一种可能的方式,还有其他方式 该按钮不是窗口的项(子项),而是按钮容器的项。如果您想用down找到它,那么需要获取容器的引用并调用down 而不是
windowobject.down('#renderattachmntbutton') // WRONG
召唤
该按钮不是窗口的项(子项),而是按钮容器的项。如果您想用down找到它,那么需要获取容器的引用并调用down 而不是
windowobject.down('#renderattachmntbutton') // WRONG
召唤
你可以试试
windowobject.down('[itemId=renderattachmntbutton]') ;
你可以试试
windowobject.down('[itemId=renderattachmntbutton]') ;
试试这个
Ext.ComponentQuery.query('[itemId=renderattachmntbutton]')[0]
试试这个
Ext.ComponentQuery.query('[itemId=renderattachmntbutton]')[0]
阅读
renderTo
的文档。阅读renderTo
的文档。感谢您的回复。但是如果我再次打开窗口,那么我将得到未捕获的异常,因为它试图注册相同的id“buttonContainer”。这就是我只想使用itemids的原因。谢谢你的回复。但是如果我再次打开窗口,那么我将得到未捕获的异常,因为它试图注册相同的id“buttonContainer”。这就是我只想使用ItemIDs的原因,但是如何获得对“buttoncontainer”的引用呢?它是containerWell的一个itemId,我永远不会这样编写它,因为它太依赖于Ext从中提取的HTML。若按钮是窗口的直接项(推荐),那个么您的原始代码就可以工作了。但如何获得对“buttoncontainer”的引用呢?它是containerWell的一个itemId,我永远不会这样编写它,因为它太依赖于Ext从中提取的HTML。如果按钮是窗口的直接项(推荐),那么您的原始代码就可以工作了。也尝试了,但没有运气。也尝试了,但没有运气