如果我知道DOM元素的ID,如何获取组件?
问题描述:
我只是继承了一个有很多页面的ExtJS应用程序。此应用程序允许用户从MS Word粘贴。在MS Word 2003中,单引号和双引号不是普通的ASCII字符。当数据存储在数据库中时,它们被转换为方框或倒置问号,因为我们的数据库列不处理Unicode,并且我们不希望将列转换为处理Unicode(数据只应该是ASCII,除了这些引号)。我在网上发现了一个JavaScript函数,可以从给定的字符串中删除这些引号。如果我知道DOM元素的ID,如何获取组件?
我已经测试通过添加此功能:
enableKeyEvents: true,
listeners: {
keyup: function(c,e) { ... }
}
这对于一个元素/组件工作正常。但是我有大约100个组件,使用这个应用程序,找到这些组件并不容易。因此,我决定做的是监听使用jQuery体元素的keyup事件:
jQuery('body').keyup(function(e) {
var keyCode = e.which;
if ((keyCode == 86) && (e.ctrlKey)) {
var domEl = e.target;
var domId = domEl.getAttribute('id');
}
}
此应用程序使用网格组件和其他非并网组件。为了可靠地获取和设置值,我想获取组件并使用它的getValue()和setValue()方法。那么,知道DOM元素的ID,是否有办法获得组件?
答
,如果你有domId与
var objComp = Ext.getCmp(domId);
尝试,如果你使用任何布局尝试
var objComp = Ext.getCmp('center-region').getComponent(domId)
有没有人对我怎样才能从元素的ID获取该组件的任何想法,或关于如何解决我的问题的任何建议? – Khai 2012-04-27 19:38:34