这几个月正式开始运用ExtJS开发项目,接下来会将这几个月的一些经验整理成一个系列博客。今天要讲的是ExtJS中的基础,如何获取component和Dom.element。


一、query查询

以下的path为查询条件,查询方式类似于JQuery

* ComponentQuery 返回 component

Ext.ComponentQuery.query(path)   全局搜索path条件的component

component.query(path)   本component范围内搜索path条件的component

* dom.query 返回 dom

Ext.query( path,[root], [type], [single] )

path 搜索条件

root 搜索该root下的dom

* Store.query 返回 Ext.util.MixedCollection

store.query('name', 'boy')
store.queryBy(function(record) {
  return record.get('name') == 'girl' && record.get('sex') == 1; 
});

二、up和down

* up( Stringselector, [Number/Mixed maxDepth ] ) : Ext.core.Element

selector:必选,字符串形式,表示要匹配的组件。例如:form、window等

Maxdepth:可选,表示要匹配的最大深度。

up方法的API解释为:通过简单的选择,获得相匹配的dom,使用up方法总是返回一个Ext.core.Element,也就是ext的组件。


* down( Stringselector, [Boolean returnDom ] ) : HTMLElement / Ext.core.Element

selector:必选,字符串形式,表示要匹配的组件,例如:combobox、textfield等

returnDom:可选,布尔类型,如果为true,则返回DOM节点,而不是Ext.core.Element。值默认为false

down方法的API解释,通过选择器,来获得任何深度的子组件,在down方法中,不应该包含组件的id,而应该是组件的xtype