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