有没有什么方法可以隐藏jqGrid表中的列,但在表格编辑器模式对话框中编辑行时,它显示为只读状态?jqGrid中的隐藏列
回答
我只是想扩大queen3的建议下,应用以下的伎俩:
editoptions: {
dataInit: function(element) {
$(element).attr("readonly", "readonly");
}
}
方案1:
- 场必须在网格中可见
- 字段必须在表格中可见
- 字段必须是只读的
解决方案:编辑表单时
colModel:[
{ name:'providerUserId',
index:'providerUserId',
width:100,editable:true,
editrules:{required:true},
editoptions:{
dataInit: function(element) {
jq(element).attr("readonly", "readonly");
}
}
},
],
的providerUserId是在网格中可见和可见。但是你不能编辑内容。
方案2:
- 场必须是不可见的网格
- 场必须在形式
- 场必须是只读
解决方案:
colModel:[
{name:'providerUserId',
index:'providerUserId',
width:100,editable:true,
editrules:{
required:true,
edithidden:true
},
hidden:true,
editoptions:{
dataInit: function(element) {
jq(element).attr("readonly", "readonly");
}
}
},
]
请注意,在这两种情况下,我使用jq引用jquery,而不是通常的$。在我的HTML我有以下脚本修改的jQuery使用的变量:
<script type="text/javascript">
var jq = jQuery.noConflict();
</script>
您可以使用下面的代码隐藏表列..
JQuery("tableName").hideCol("colName");
你也可以使用下面的代码来再次显示它。
JQuery("tableName").showCol("colName");
对于你的问题,你可以调用上的document.ready()的hideCol()代码,您可以绑定在该对话框的编辑showCol()代码/单击事件。
您还可能想在对应于编辑完成的事件中,或者在用户/编辑器正在编辑时绑定hideCol()代码。 – 2009-11-02 15:17:36
此功能内置于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}
}
],
...
};
有可以应用,但这些基本设置会躲在经理在网格视图的收入,而且将允许编辑被显示在编辑表单当其他editrules。
这就是我正在寻找的东西,除非我不希望它在编辑表单中可编辑。我想没有办法做到这一点。 – maxpower47 2009-11-17 12:32:06
所以你希望它在编辑窗体中可见,但只读? – 2009-11-17 16:42:08
yep --------------- – maxpower47 2009-11-20 16:01:06
尝试使用edithidden:真实,也做
editoptions: { dataInit: function(element) { $(element).attr("readonly", "readonly"); } }
还是看的jqGrid维基自定义编辑,您可以设置任意输入类型,甚至标签,我认为。
这个线程是我猜想的很老,但万一别人绊倒这个问题... 我不得不从表格的选定行中获取一个值,但我不想显示列排是从。我使用了hideCol,但是和Andy看起来很混乱的问题一样。要修复它(称之为黑客攻击),我只需重新设置网格的宽度即可。
jQuery(document).ready(function() {
jQuery("#ItemGrid").jqGrid({
...,
width: 700,
...
}).hideCol('StoreId').setGridWidth(700)
由于我的行宽度自动的,当我重置表的宽度将其重置列宽,但不包括隐藏的一个,所以它们填充在间隙中。
与jqgrid的4.0版本完美结合。 – 2011-07-07 20:01:47
尝试[此方法](http://www.trirand.com/blog/?page_id=393/help/recall-and-set-column-widths/)用于事后调整列的大小。 – WEFX 2012-02-27 22:11:28
要隐藏网格列
jQuery("#validGrid").jqGrid('hideCol',str);
这是一个有点老了,这个帖子。但这是我的代码来显示/隐藏列。我使用内置函数来显示列并将它们标记出来。
显示列显示/隐藏列的功能。 #jqGrid是我的网格的名称,columnChooser是jqGrid列选择器。
function showHideColumns() {
$('#jqGrid').jqGrid('columnChooser', {
width: 250,
dialog_opts: {
modal: true,
minWidth: 250,
height: 300,
show: 'blind',
hide: 'explode',
dividerLocation: 0.5
} });
- 1. JqGrid隐藏/显示列
- 2. 用条件隐藏JQGrid中的列
- 3. 使列在jqGrid中不可隐藏
- 4. 在jqGrid中启用搜索隐藏列
- 5. 的jqGrid - 隐藏的列不起作用
- 6. jQGrid列选择器隐藏列
- 7. jqGrid的隐藏列,并在分组
- 8. 列显示/隐藏在jqGrid的
- 9. jqGrid有隐藏行时的冻结列
- 10. jqGrid隐藏字段
- 11. jqGrid。动画隐藏/显示列
- 12. 当列隐藏时,Jqgrid失去全宽
- 13. jqgrid hideCol不隐藏页脚列
- 14. 如何动态地隐藏jqgrid列
- 15. jqgrid隐藏的子网格
- 16. jqgrid隐藏和显示行
- 17. jqGrid隐藏加图标
- 18. jqGrid:排序时隐藏行
- 19. 隐藏JQGrid占用空间
- 20. 在jqgrid的特定列中显示隐藏的数据
- 21. 将标记插入到隐藏的jqGrid列中
- 22. 如何隐藏jqgrid子网格中的列?
- 23. 将json数组存储在jqgrid的隐藏列中
- 24. 在jqgrid中隐藏冻结字段
- 25. 如何在jqgrid中隐藏行?
- 26. 在jqgrid标题中隐藏文本
- 27. 在jqgrid中隐藏子网格标题
- 28. jqgrid基于其他列值隐藏编辑表单上的列
- 29. jqGrid的列不扩展到setGridWidth后1列隐藏在IE8仅
- 30. 禁用或启用在jqgrid中显示/隐藏列
高超的解释与情景..! +1 – 2012-01-24 09:30:03