2010-01-06 89 views
10

我知道我可以使用代碼隱藏網格列標題。隱藏ExtJS網格列標題

#gridid .x-grid3-hd-row { display:none; } 

但我不想使用任何CSS更改。如何使用JavaScript做同樣的事情?

回答

19

你可以用Ext.grid.GridPanel加入這以這種方式很容易地做到這一點:

hideHeaders: true 
10

您可以將hideHeaders configuration option of the GridPanel設置爲true。或者你的意思是在網格呈現之後?

編輯:如果你想改變(或禁用)被創建的頭的方式,你也可以從GridView覆蓋renderHeadersupdateHeaders。另一種方法可能是通過一個templates選項將GridView,與header值設置爲空的模板,而不是默認的:

ts.header = new Ext.Template(
    '', 
    '{cells}', 
    ' 
' 
); 

雖然默認實現this.innerHd寫入標題,innerHd被定義爲this.mainHd.dom.firstChild ,並且如果設置了hideHeaders選項,則this.mainHd被設置爲隱藏。所以我希望這個選項也會影響列標題。

編輯:我們在談論什麼版本的ExtJS?我看着the current source,這是3.1我猜。

+0

hideHeader選項僅適用於網格標題。我詢問了Grid的列標題 – Madhu 2010-01-06 07:13:07

+0

我用另一種方式更新了我的答案。 – 2010-01-08 08:36:53

4

您可以添加到您的網格的定義:

listeners: { 
    render: function(grid) { 
     grid.getView().el.select('.x-grid3-header').setStyle('display', 'none'); 
    } 
}, 
0

通常你結束當你把你的網格放到一個面板中時想要這個。

對於我的CSS黑客似乎不好,只是這工作:

preventHeaders: true 

查看屬性here in the docs.

6

只需添加hideHeaders: true到您的網格。它應該工作