2010-07-20 61 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(" "); 
}