在extjs4如果我有一個按鈕如下:的xtype在Extjs4創建相同的id
Ext.define('Pandora.view.MyButton', {
extend: 'Ext.button.Button',
alias: 'widget.mybutton',
text: 'click me',
id: 'butid'
});
如果我用它在視口中如下:
{
xtype: 'panel',
id: 'panelid',
title: 'One tab',
html: '<p>what is this </p>'
},
{
xtype: "mybutton"
},
{
xtype: "mybutton"
}
這將創建一個相同的ID兩個按鈕(這是不是W3C推薦),它可以產生怪異的行爲。爲了在應用程序中多次重複使用相同的按鈕,建議使用xtype而不提供id(在這種情況下,Extjs將創建它自己的)。
你的意思是ExtJS的不繼W3C標準中刪除您的ID。其次,如果你有簡單的html頁面和兩個具有相同id的元素,那麼只有第一個元素有效(被getElementById引用)。 Extjs如何在同一個DOM中管理多個ID。 – user1296632 2012-03-27 23:14:05
好吧,你會是一個沒有遵循W3C標準的人,因爲在渲染重複組件時不讓框架生成id。可以使用css選擇器訪問組件,也可以使用容器特定的屬性'itemId' – jthurau 2012-03-28 04:11:57
是的,如上所述,它的開發者有責任爲每個組件提供不同的id,否則不指定id,ExtJS知道W3C標準,所以它會創建使用Ext.id()函數的每個組件的唯一標識 – 2012-03-28 07:10:09