ExtJs组件之间的相互访问,访问机制
<script type="text/javascript"> ????Ext.onReady(function(){ ????????????var tempWindow = new Ext.Window({ ????????????????title:"登陸", ????????????????layout:"form", ????????????????plain:true, ???????????? ? ????????????????items:[ ????????????????????{xtype:"textfield",fieldLabel:"用戶名"}, ????????????????????{xtype:"textfield",fieldLabel:"密碼"} ????????????????], ????????????????buttons:[ ????????????????????{text:"登 陸"}, ????????????????????{ ????????????????????????text:"取 消", ????????????????????????handler:function(){ ????????????????????????????alert(this.text);//這里的this是handler處理該組件的對(duì)象,可以通過(guò)this來(lái)獲得配置的相關(guān)屬性 ????????????????????????????//個(gè)人暫時(shí)的理解為this取消這個(gè)按鈕,他的父級(jí)是buttons,在父一級(jí)才是window窗口 ????????????????????????????//注意items是個(gè)屬性,并不是個(gè)數(shù)組,如果想訪問(wèn)的話就必須使用itemAt來(lái)定位那個(gè)組件 ????????????????????????//??alert(this.ownerCt.ownerCt.items[0].getValue());這種寫(xiě)法在ExtJs3.2中是錯(cuò)誤的 ????????????????????????????alert(this.ownerCt.ownerCt.items.first().getValue());//獲得items里第一個(gè)表單中的值 ????????????????????????????alert(this.ownerCt.ownerCt.items.itemAt(1).getValue());//獲得items里第二個(gè)表單中的值 ????????????????????????????alert(this.ownerCt.ownerCt.title);//獲得window的名稱(chēng) ????????????????????????????alert(this.ownerCt.ownerCt.buttons[0].text);//獲得button中的值 ????????????????????????} ????????????????????} ????????????????] ????????????}); ????????????tempWindow.show(); ????}); </script> |
? ?
? ?
- 如果程序提供了this,那么該this是指的提供handler的對(duì)象,這里的this指的是button
- This.ownerCt組件訪問(wèn)容器組件,這里可以同this.ownerCt.title可以放放window當(dāng)中的屬性
- 如果想得到items對(duì)象,那么方法為:this.ownerCt.items,返回的是個(gè)集合MixedCollection,可以查看api得到更多的屬性值
- 如何獲得items當(dāng)中第一個(gè)元素呢,通過(guò)this.ownerCt.items.first().getValue()方法可以獲得items里面第一個(gè)元素當(dāng)中的值
? ?
問(wèn)題:如何得到items當(dāng)中兩個(gè)輸入框當(dāng)中的內(nèi)容呢?
this.ownerCt.ownerCt.items.itemAt(1).getValue()
? ?
? ?
? ?
- 方法在button當(dāng)中添加一個(gè)handler通過(guò)這里的this可以獲得items,在通過(guò)items得到其中的值
- This.ownerCt.items可以獲得該上下文當(dāng)中的items對(duì)象;
- 通過(guò)該對(duì)象的first()方法可以獲得姓名的表單和密碼的表單對(duì)象,通過(guò)該對(duì)象的getValue方法來(lái)獲得輸入的值
- itemsAt這個(gè)方法的起始值是從0開(kāi)始的
- 直接alert(temp)就可以了
- 也可以使用Ext.getCmp()可以通過(guò)id來(lái)獲得組件對(duì)象
? ?
? ?
? ?
? ?
? ?
? ?
? ?
轉(zhuǎn)載于:https://www.cnblogs.com/babyhhcsy/p/3197839.html
總結(jié)
以上是生活随笔為你收集整理的ExtJs组件之间的相互访问,访问机制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: u-boot的nand驱动写过程分析
- 下一篇: JS事件大全