2010-07-20 88 views
1

我正在使用jqGrid與subGrid。但在某一行,我不想顯示加號圖標。因爲我不想讓用戶查看該特定行上的子網格。那麼任何機構都可以幫助我如何在那裏隱藏加號圖標。我試着用下面的代碼,但沒有運氣。jqGrid隱藏加圖標

afterInsertRow : function(rowid, rowdata, rowelem) { 
$("tr[id="+rowid+"]>td.ui-sgcollapsed>a") 
          .click(function(){return false;}) 
} 

通過上述操作,我可以禁用點擊加號圖標子網格的加號圖標不會打開。但是,我的要求是不要顯示加號圖標。 當我像下面這樣做時,邊界不會在IE6中進入,而在莫斯拉邊界即將到來。

$("tr#1.ui-widget-content td:first span").removeAttr("class"); 

此外,通過上面的代碼它再次點擊單元格加號圖標出現。

任何機構都可以告訴我如何隱藏加號圖標。並禁用其點擊事件?

回答

0

嘗試使用onGridComplete事件。當網格完成加載時,您將需要找到要從中刪除加號圖標的行。最後,刪除用於確定加號圖標樣式的類

+0

聽起來像是一種合理的方法。你有任何示例代碼讓他開始? – 2010-07-21 13:29:27

1

這適用於我。

afterInsertRow: function(rowid, rowdata, rowelem) { 
     $("tr[id=" + rowid + "]>td:first").removeAttr("class"); 
     $("tr[id=" + rowid + "]>td:first").html(" "); 
} 
+0

如何完全去除td和th? – 2012-06-27 16:09:29

0

即使您激活了多重選擇,這也能正常工作。 (:首先引用複選框欄)

afterInsertRow: function(rowid, rowdata, rowelem) { 
    $("tr[id=" + rowid + "]>td[aria-describedby$=_subgrid]").removeAttr("class"); 
    $("tr[id=" + rowid + "]>td[aria-describedby$=_subgrid]").html(" "); 
}