【发布时间】:2017-01-03 14:23:39
【问题描述】:
使用 jqGrid 4.3.1,我有一些列隐藏在网格视图中,但我希望它们在编辑表单中可见和可编辑。
根据documentation,colModel 模块的editrules 选项的edithidden 子选项启用了我想要的确切行为(强调我的):
该选项仅在表单编辑模块中有效。默认情况下,隐藏字段不可编辑。 如果该字段隐藏在网格中并且edithidden设置为true,则在调用add或edit方法时可以编辑该字段。
但是,当我实现以下代码时:
{name:'AcmeCoValue',editrules: {edithidden: true}, editable: true, show:'AcmeCovalue', hidden:true, fixed:'true', width: 65},
编辑表单的渲染 HTML 显示该字段为:
<tr style="display:none" rowpos="7" class="FormData" id="tr_RedCoValue">
这与我设置时的行为相同:
editrules: {edithidden: false}
在我看来edithidden 参数无效。
我发现使其可见的唯一方法是使用 formoptions:{rowpos:7} 选项将字段强制放到可见行上,这使得该字段即使在 edithidden: false 时也可见。
为什么edithidden似乎没有任何效果?
这是我继承的遗留代码。有什么我应该检查的,这可能会覆盖edithidden 的预期行为吗?
我想我可以在 Javascript 中手动实现我想要的行为,但为了简单性和可维护性,我更喜欢用“jqGrid”方式来实现它,而且我也担心它为什么不起作用,以及可能出现的其他问题和这个有关。
【问题讨论】:
标签: javascript jquery html forms jqgrid