ExtJs 4,有没有办法找到控制权?(不是"id")

obe*_*iro 4 javascript extjs extjs4

我有按钮id = 'someid',我可以通过Ext.getCmp('someid')... 找到它

有没有办法为该按钮设置某种"extraId",并通过"extraId"找到该按钮?

Sim*_*ity 15

问题是您要搜索哪些内容来获取商品.

另一种方式可能是itemId.

当没有对象引用可用时,itemId可以用作获取组件引用的替代方法.不要使用带有Ext.getCmp的id,而是使用带有Ext.container.Container.getComponent的itemId,它将检索itemId或id.由于itemId是容器内部MixedCollection的索引,因此itemId在本地作用于容器 - 避免与需要唯一ID的Ext.ComponentManager发生潜在冲突.

来源和进一步的文档:http://docs.sencha.com/ext-js/4-0/#/api/Ext.AbstractComponent-cfg-itemId

ComponentQuery(由wombleton提到的)也是一个不错的办法,但也许并不像高性能的的itemId.


wom*_*ton 8

您可以通过执行搜索来搜索它Ext.ComponentQuery.

可在链接页面的控制台中使用的示例:

Ext.ComponentQuery.query('button[text=OK]')
Run Code Online (Sandbox Code Playgroud)

您可以text=OK使用要搜索的属性进行替换.