有没有办法隐藏jqGrid表中的列,但在表单编辑器模式对话框中编辑该行时将其显示为只读?
发布于 2009-11-17 06:16:25
此功能已内置于jqGrid中。
设置网格函数,如下所示。
$('#myGrid').jqGrid({
...
colNames: ['Manager', 'Name', 'HiddenSalary'],
colModel: [
{ name: 'Manager', editable: true },
{ name: 'Price', editable: true },
{ name: 'HiddenSalary', hidden: true , editable: true,
editrules: {edithidden:true}
}
],
...
};
还可以应用其他编辑规则,但此基本设置将在网格视图中隐藏经理的薪水,但允许在显示编辑表单时进行编辑。
发布于 2009-11-02 23:16:42
您可以使用以下代码隐藏表列。
JQuery("tableName").hideCol("colName");
您可以使用以下代码再次显示它。
JQuery("tableName").showCol("colName");
对于您的问题,您可以在document.ready()上调用hideCol()代码,并且可以将showCol()代码绑定到对话框的编辑/单击事件上。
发布于 2010-06-24 01:56:50
我想这个帖子已经很老了,但是以防其他人偶然发现这个问题……我必须从表的选定行中获取一个值,但我不想显示该行所在的列。我用的是hideCol,但是和Andy有同样的问题,它看起来很乱。要修复它(称之为hack),我只需重新设置网格的宽度。
jQuery(document).ready(function() {
jQuery("#ItemGrid").jqGrid({
...,
width: 700,
...
}).hideCol('StoreId').setGridWidth(700)
因为我的行宽是自动的,所以当我重置表格的宽度时,它会重置列宽,但不包括隐藏的列宽,所以它们填充了间隙。
https://stackoverflow.com/questions/1661800
复制相似问题