一、Ext.select
select方法可以用來獲得指定標(biāo)簽的DOM對象,其返回值是一個Ext.CompositeElement對象。是一個Element的數(shù)組
返回的結(jié)果可直接如同Element般地操作,一般比query方法常用。
實例
1、多選擇符
 
你可以輸入多個查詢條件,然后在一個對象上面返回。
例如
// 匹配所有的帶foo class的div和帶bar class的span
Ext.select('div.foo, span.bar');
2、根節(jié)點(diǎn)
使用選擇符,它可以支持一個根節(jié)點(diǎn)的概念。根節(jié)點(diǎn)的意思是如果有指定選擇符的根節(jié)點(diǎn)表示從該節(jié)點(diǎn)上開始進(jìn)行搜索。這樣可以助于提升性能,因為若不存在根節(jié)點(diǎn)表示從document body開始進(jìn)行搜索,速度自然比較慢。
Ext.get('myEl').select('div.foo');// 這是等價的
Ext.select('div.foo', true, 'myEl');// 這是等價的
3、查詢鏈
對于構(gòu)成復(fù)雜的查詢情況,可以由多個查詢條件組成查詢鏈。依次按順序進(jìn)行屬性鏈的查詢。
例如
// 匹配class為foo的div,要求是有title屬性為bar的div,而且還是這個div下面最前頭的子元素
Ext.select('div.foo[title=bar]:first');
 
 
二、Ext.query
query方法和select方法非常類似,不同的是,它返回的是一個封裝了DOM的數(shù)組,它是Ext.DomQuery.select()的簡寫方式。
 
實例
1、元素選擇符
// 這個查詢會返回有兩個元素的數(shù)組因為查詢選中對整個文檔的所有span標(biāo)簽。
Ext.query("span");
// 這個查詢會返回有一個元素的數(shù)組因為查詢顧及到了foo這個id。
Ext.query("span", "foo");
 
// 這個查詢會返回包含我們foo div一個元素的數(shù)組!
Ext.query("#foo");
 
/*這個查詢會返回有一個元素的數(shù)組, 包含與之前例子一樣的div但是我們使用了class name來獲取*/
Ext.query(".foo");
// 這會返回一個數(shù)組,包含文檔的所有元素。
Ext.query("*");
// 這會返回有一個元素的數(shù)組,包含p標(biāo)簽的div標(biāo)簽
Ext.query("div p");
// 這會返回有兩個元素的數(shù)組,包含span標(biāo)簽的div標(biāo)簽
Ext.query("div span");
 
2、屬性選擇符
// 我們檢查出任何存在有class屬性的元素。
// 這個查詢會返回5個元素的數(shù)組。
Ext.query("*[class]");
// 這會得到class等于“bar”的所有元素
Ext.query("*[class=bar]");
// 這會得到class不等于“bar”的所有元素
Ext.query("*[class!=bar]");
// 這會得到class從“b”字頭開始的所有元素
Ext.query("*[class^=b]");
 
//這會得到class由“r”結(jié)尾的所有元素
Ext.query("*[class$=r]");
 
//這會得到在class中抽出“a”字符的所有元素
Ext.query("*[class*=a]");