extjs每個(gè)組件要設(shè)置唯一的ID否則會(huì)出錯(cuò)
更新時(shí)間:2014年06月15日 11:55:17 投稿:whsnow
extjs每個(gè)組件要設(shè)置唯一的ID,否則會(huì)造成各種錯(cuò)誤。EXTJS基本上是靠ID來(lái)識(shí)別組件的
extjs每個(gè)組件要設(shè)置唯一的ID,否則會(huì)造成各種錯(cuò)誤
EXTJS基本上是靠ID來(lái)識(shí)別組件的,假如你在panel1中有個(gè)ID:"keyword"的textfield,而panel2中有個(gè)ID相同的textfield ,那么,當(dāng)你關(guān)閉panel2,由于extjs發(fā)現(xiàn)panel2中的ID:"keyword"組件在panel1中仍然使用中,是不會(huì)銷毀掉它的,于是它成為一個(gè)孤立的對(duì)象,從而造成混亂。
無(wú)論如何,你得時(shí)刻記著,任何時(shí)候,必須確保對(duì)象ID是唯一的。這有兩個(gè)做法:
1,不給對(duì)象指定ID,然后使用組件的find方法通過(guò)其他屬性來(lái)查找對(duì)象,例如find("name","role"),結(jié)果產(chǎn)生一個(gè)array,當(dāng)然,你的屬性是唯一的,那你就可以用find("name","role")[0]這種形式引用組件。
2,你也可以用父組件ID+子組件ID的形式來(lái)指定子組件,這個(gè)方法更好,并且extjs內(nèi)部就是這么做,子組件的ID變成了:this.id+"_role",注意,這里的this是指父組件。在實(shí)例時(shí),由于父組件的ID指定的一定是唯一的,所以,即便實(shí)例了兩次同一個(gè)組件,兩個(gè)實(shí)例的子組件卻擁有唯一ID。從而可以很好的處理ID重復(fù)問(wèn)題
EXTJS基本上是靠ID來(lái)識(shí)別組件的,假如你在panel1中有個(gè)ID:"keyword"的textfield,而panel2中有個(gè)ID相同的textfield ,那么,當(dāng)你關(guān)閉panel2,由于extjs發(fā)現(xiàn)panel2中的ID:"keyword"組件在panel1中仍然使用中,是不會(huì)銷毀掉它的,于是它成為一個(gè)孤立的對(duì)象,從而造成混亂。
無(wú)論如何,你得時(shí)刻記著,任何時(shí)候,必須確保對(duì)象ID是唯一的。這有兩個(gè)做法:
1,不給對(duì)象指定ID,然后使用組件的find方法通過(guò)其他屬性來(lái)查找對(duì)象,例如find("name","role"),結(jié)果產(chǎn)生一個(gè)array,當(dāng)然,你的屬性是唯一的,那你就可以用find("name","role")[0]這種形式引用組件。
2,你也可以用父組件ID+子組件ID的形式來(lái)指定子組件,這個(gè)方法更好,并且extjs內(nèi)部就是這么做,子組件的ID變成了:this.id+"_role",注意,這里的this是指父組件。在實(shí)例時(shí),由于父組件的ID指定的一定是唯一的,所以,即便實(shí)例了兩次同一個(gè)組件,兩個(gè)實(shí)例的子組件卻擁有唯一ID。從而可以很好的處理ID重復(fù)問(wèn)題
相關(guān)文章
學(xué)習(xí)ExtJS(二) Button常用方法
ExtJS Button常用方法,需要學(xué)習(xí)的朋友可以參考下。2009-10-10Extjs4.0 ComboBox如何實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)
Extjs4.0 ComboBox如何實(shí)現(xiàn)三級(jí)聯(lián)動(dòng),許多網(wǎng)友都很好奇這個(gè)問(wèn)題,明確的一點(diǎn)是在extjs4.0中要使用load來(lái)獲取數(shù)據(jù),到底如何實(shí)現(xiàn),下面小編為大家分享具體步驟2016-05-05Extjs 4.x 得到form CheckBox 復(fù)選框的值
CheckBox(復(fù)選框)主要用來(lái)接收用戶選擇的選項(xiàng),那么如何通過(guò)Extjs 4.x 得到form CheckBox的值呢?下面有個(gè)不錯(cuò)的方法,大家值得一看2014-05-05extjs 3.31 TreeGrid實(shí)現(xiàn)靜態(tài)頁(yè)面加載json到TreeGrid里面
extjs 3.31 TreeGrid 我的小改動(dòng),實(shí)現(xiàn)靜態(tài)頁(yè)面加載json到TreeGrid里面2013-04-04解決ExtJS在chrome或火狐中正常顯示在ie中不顯示的瀏覽器兼容問(wèn)題
由于開發(fā)過(guò)程中大多用chrome來(lái)調(diào)試,很少在ie中調(diào)試(現(xiàn)在兩者都要兼顧),導(dǎo)致最后在ie中頁(yè)面不能正常加載,當(dāng)時(shí)那個(gè)囧啊,看到ie報(bào)的錯(cuò),我都想哭,連出錯(cuò)的堆棧信息都沒(méi)有(這一點(diǎn),ie做的真不好),無(wú)從下手啊2013-01-01Extjs中RowExpander控件的默認(rèn)展開問(wèn)題示例探討
本文為大家探討下關(guān)于Extjs中RowExpander控件的默認(rèn)展開問(wèn)題,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2014-01-01ExtJs 學(xué)習(xí)筆記 Hello World!
最近學(xué)ajax,接觸到了Extjs這個(gè)強(qiáng)大的框架。我想通過(guò)我的學(xué)習(xí)筆記,最后可以讓大家上手在項(xiàng)目中使用Ext。首先我會(huì)寫一些基本的用于入門Ext的文章,打好基礎(chǔ)是很重要的。2008-12-12