2011-03-12 118 views
7

我看你可以添加一個頂部標題欄,並通過使用此代碼放在一個標題:如何刪除(或隱藏)jqgrid中的標題欄?

jQuery('#grid').setCaption("Title"); 

反正是有,如果我已經設置一個標題,刪除標題欄?

我試過這個,但它只是刪除文本(不會刪除整個標題欄)。

jQuery('#grid').setCaption(""); 

回答

19

如果你想快點, 測試

$(".ui-jqgrid-titlebar").hide(); 

,或者如果你有多個網格,則只能躲在$( 「#電網」)的標題欄,然後做

$("#gview_grid > .ui-jqgrid-titlebar").hide() 
7

如果您創建沒有標題欄的jqGrid(caption: ""),並檢查與開發工具或Firebug相關的網格,您將看到類別爲「ui-jqgrid」的<div> -titlebar」有<span>與類‘UI-jqGrid的標題’,並與類錨‘UI-的jqGrid - 標題欄關閉’的子元素:

<div id="gbox_list" class="ui-jqgrid ui-widget ui-widget-content ui-corner-all"> 
    ... 
    <div id="gview_list" class="ui-jqgrid-view"> 
     <div style="display: none;" 
      class="ui-jqgrid-titlebar ui-widget-header ui-corner-top ui-helper-clearfix"> 
      <a style="right: 0px;" class="ui-jqgrid-titlebar-close HeaderButton" 
       role="link" href="javascript:void(0)"> 
       <span class="ui-icon ui-icon-circle-triangle-n"></span> 
      </a> 
      <span class="ui-jqgrid-title"></span> 
     </div> 
     ... 

所以,即使你沒有創建網格標題欄jqGrid 創建標題欄的所有隱藏元素

我通過在標題中創建並能找到下面的代碼片段的jqGrid的代碼看起來

if(ts.p.caption) { 
    ... 
    $(".ui-jqgrid-titlebar-close",grid.cDiv).click(function(e){ 
    ... 
} else {$(grid.cDiv).hide();} 

所以有相同的結果與caption: ""參數初始化網格,你可以做以下

var mygrid = jQuery('#list'), 
    cDiv = mygrid[0].grid.cDiv; 
mygrid.setCaption(""); 
$("a.ui-jqgrid-titlebar-close",cDiv).unbind(); 
$(cDiv).hide(); 

只有在您確定後,您才應該從最小化按鈕進行解除綁定,以後網格將不會有標題(caption)。綁定花費的資源較少,對隱藏的網格無能爲力。

因此,Pravat Maskey的the suggestion只是爲了隱藏標題是絕對正確的,我的調查只是證實了這一點。