2010-01-06 22 views
10

मुझे समझ में आता है कि मैं कोड का उपयोग कर ग्रिड कॉलम हेडर छुपा सकता हूं।छुपाएं ExtJS ग्रिड कॉलम हेडर

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

लेकिन मैं किसी भी सीएसएस परिवर्तन का उपयोग नहीं करना चाहता हूं। जावास्क्रिप्ट का उपयोग करके ऐसा कैसे करें?

उत्तर

19

आप इस तरह से करने के लिए को यह जोड़ने Ext.grid.GridPanel के साथ आसानी से यह कर सकते हैं:

hideHeaders: true 
10

आप hideHeaders configuration option of the GridPanel से true पर सेट कर सकते हैं। या ग्रिड के बाद आपका मतलब है?

संपादित: आप बदलना (या अक्षम) जिस तरह से हेडर बनाई गई है चाहते हैं, आप भी renderHeaders या updateHeadersGridView से रद्द कर सकते थे।

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

हालांकि डिफ़ॉल्ट कार्यान्वयन this.innerHd में हेडर लिखते हैं, और innerHdthis.mainHd.dom.firstChild के रूप में परिभाषित किया गया है: एक और तरीका है डिफ़ॉल्ट के बजाय एक खाली टेम्पलेट को header मूल्य सेट के साथ, GridView करने के लिए एक templates विकल्प पारित करने के लिए हो सकता है , और this.mainHd छिपाने के लिए सेट है अगर hideHeaders विकल्प सेट है। तो मैं उम्मीद करता हूं कि विकल्प कॉलम हेडर को भी प्रभावित करेगा।

संपादित: हम एक्स्टजेस का किस संस्करण के बारे में बात कर रहे हैं? मैंने the current source देखा, जो 3.1 मुझे लगता है।

+0

छुपा हैडर विकल्प केवल ग्रिड के शीर्षलेख के लिए है। मैंने ग्रिड के कॉलम हेडर – Madhu

+0

के बारे में पूछा मैंने इसे करने के लिए एक और तरीके से अपना जवाब अपडेट किया है। –

4

आप अपने ग्रिड परिभाषा को यह जोड़ सकते हैं:

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

आमतौर पर आप खत्म जब आप अपनी ग्रिड को पैनल में डालते हैं तो इसे चाहते हैं।

मेरे लिए सीएसएस हैक्स बुरा लग रहा था और केवल इस काम किया:

preventHeaders: true 

संपत्ति here in the docs.

6

देखें सिर्फ अपने ग्रिड से hideHeaders: true जोड़ें। यह

संबंधित मुद्दे