8

クラス名でDivのExtJsコンポーネントオブジェクトを取得するにはどうすればよいですか?

私のdivは次のとおりです。

<div class="abc"></div>

このDivのExtJsオブジェクトを実行するにはどうすればよいですか?getWidth()

注:指定はありませんid

私が試したこと:

Ext.select(".abc")
Ext.query(".abc")

編集:

エラー: Object has no method 'getWidth'

<div id="main">
<div class="abc"></div>
</div>
  var d = Ext.get( "main" );
  d.query('.abc').getWidth();
4

4 に答える 4

20

使用する

var dom = Ext.dom.Query.select('.abc');
var el = Ext.get(dom[0]); 

これは を返しますExt.Element。その後、次のように el で ext メソッドを使用できます

el.on('click', function(){}, scope);

また

el.getWidth()
于 2012-11-14T13:08:22.163 に答える
7
于 2012-11-14T13:13:31.323 に答える
6

Ext4 以上の場合、以下を使用できます。

Ext.ComponentQuery.query('panel[cls=myCls]');

そして、このコンポーネントの配列を取得します

ソース: http://docs.sencha.com/ext-js/4-1/#!/api/Ext.ComponentQuery

于 2013-03-01T15:16:19.467 に答える
4
Ext.select('abc');

この方法は EXT 4 でも機能します。

あなたの例では、クラス名の文字列を呼び出すときにドットを削除するだけです。

于 2014-04-08T20:28:20.913 に答える