如何删除Ext.query('。class name') - EXTJS
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除Ext.query('。class name') - EXTJS相关的知识,希望对你有一定的参考价值。
我想使用以下方法从数组中删除所有元素:
Ext.query('.classname') // gets me array of elements
Ext.query('.classname').removeall()
不是它支持的功能,如何实现这一目标?
谢谢
答案
猜它应该是这样的:
Ext.ComponentQuery.query('panel[cls=classname]').each(function(cmp) {
cmp.destroy();
});
Ext.query
实际上是Ext.dom.query
,因此它不会返回组件
...... Ext.ComponentQuery一样。
解释:问题并不表示代码应运行的内容;因此我认为它是ExtJS组件 - 而不是ExtJS面板中的html内容(在框架中没有任何表示)。关键是,当删除DOM节点时,不会破坏相关组件,这将留下孤立的引用。因此建议正确地摧毁它们,以便那些不再不必要地占用RAM,例如。如果删除DOM节点然后一遍又一遍地添加新的ExtJS组件 - 这将导致行为迟缓。
另一答案
使用Ext.select
,它包装返回元素,以便您可以调用Ext.dom.Element
方法,就好像它们是一个组:
Ext.select('.even').remove();
以上是关于如何删除Ext.query('。class name') - EXTJS的主要内容,如果未能解决你的问题,请参考以下文章