extjs每個元件要設定唯一的ID,否則會造成各種錯誤
EXTJS基本上是靠ID來辨識元件的,假如你在panel1中有個ID:"keyword"的textfield,而panel2中有個ID相同的textfield ,那麼,當你關閉panel2,由於extjs發現panel2中的ID:"keyword"組件在panel1中仍然使用中,是不會銷毀掉它的,於是它成為一個孤立的對象,從而造成混亂。
無論如何,你得時時刻刻記著,任何時候,必須確保物件ID是唯一的。這有兩個做法:
1,不給對象指定ID,然後使用組件的find方法通過其他屬性來查找對象,例如find("name","role"),結果產生一個array,當然,你的屬性是唯一的,那你就可以用find("name","role")[0]這種形式來引用元件。
2,你也可以用父元件ID 子元件ID的形式來指定子元件,這個方法更好,並且extjs內部就是這麼做,子元件的ID變成了:this.id "_role ",注意,這裡的this是指父元件。在實例時,由於父組件的ID指定的一定是唯一的,所以,即便實例了兩次同一個組件,兩個實例的子組件卻擁有唯一ID。從而可以很好的處理ID重複問題