タブがアクティブ化されたときに呼び出されるリスナーがあります。
, listeners: {
activate: function(tab){
var first = tab.down('input'), // will be null
firstEl = tab.getEl().down('input'); // will contain first input element
tab と tab.getEl() の関係を理解するのにあまり運がありません。これが jquery の場合、$(tab) は jquery 要素を提供し、オプションのセットを大幅に拡張します。extjs は、この点でほとんど逆行しているか、少なくともより複雑なようです。
いつ、なぜ必要なのかを理解しようとしているgetEl()
ので、何が機能し、何が機能しないかについての開発のがらくたを減らすことができます。他の場所では、次のようなことをしています。
showFieldHelpOnBlur = function(ctrl) {
ctrl.up('form').down('#helptext').update("");
}
getEl() なしで。この場合、 formはinput (上記) と同様の要素タグですが、使用する前に getEl() は必要ありません。一般に、同じ名前を共有しているが同じようには機能しない 2 つの機能セットはイライラさせられます。また、ドキュメントは、異なることを行う同じ名前の複数のメソッドがある理由についての手がかりを与えていないようです。似たようなことを別の方法で行う。
でいくつかの同様の問題が見つかりましfocus()
たが、本質的にDOM要素が追加機能でラップされているものに対して、一見並列に見えるメソッドのセットが2つある理由を理解すれば、それらはより理にかなっているかもしれません。