【问题标题】:Value of checkbox not set in edit form of jqGrid when using editoptions使用editoptions时未在jqGrid的编辑形式中设置复选框的值
【发布时间】:2017-10-23 05:32:06
【问题描述】:

我注意到,如果我将editoptions 参数设置为带有edittype:'checkbox' 的列,则不会在编辑表单中设置复选框的值。

即使使用空对象作为编辑选项,您也可以重现它。

...
colModel: [
    {name: 'checked', index: 'checked', editable: true, edittype: 'checkbox', formatter: 'checkbox', editoptions:{}}
]
...

尝试选择第一行并在此demo中进行编辑

这似乎是 jqgrid 中的一个错误,但我没有找到任何修复或解决方法。有人认识吗?

在我的具体情况下,我正在使用 editoptions 为输入元素填充 dataEvents,所以我无法删除它。

【问题讨论】:

  • 您的演示使用非常非常旧(6 岁)的 jqGrid 4.1.2 版本。这个版本已经死了很久了。我强烈建议您升级到当前版本的free jqGrid - 免费 jqGrid 4.14.0。在这种情况下至少需要使用 jQuery 1.7.2,但如果您需要支持旧的 Web 浏览器,建议使用 jQuery 3.2.1 或 1.12.4。我建议你看一下the article
  • @Oleg,谢谢,它似乎在当前版本中工作。请将其发布为答案,以便我接受。
  • 不客气!

标签: jquery jqgrid


【解决方案1】:

您的演示使用非常非常旧(6 岁)的 jqGrid 4.1.2 版本。这个版本已经死了很久了。我强烈建议您升级到当前版本的free jqGrid - 免费 jqGrid 4.14.0。它是我从 2014 年底开始开发的 jqGrid 的分支。免费的 jqGrid 至少需要使用 jQuery 1.7.2,但如果您需要支持旧的 Web 浏览器,建议使用 jQuery 3.2.1 或 1.12.4。

我建议您另外查看the article 免费 jqGrid fork 中存在的一些基本新功能。例如,可以使用 Font Awesome 图标来提高网格的可见性。更多信息可以在the wiki 和之前发布版本的自述文件中找到。

【讨论】:

    【解决方案2】:

    删除这部分“,editoptions:{}”

    改用这个: col型号:[ {名称:'checked',索引:'checked',可编辑:true,edittype:'checkbox',格式化程序:'checkbox'} ]

    【讨论】:

    • 为了简单起见,我在演示中将 editoptions 设置为一个空对象。实际上,我的 editoptions 填充了 dataEvents,所以我无法删除它。
    • 那么你需要像这样在editoptions对象中添加你的值:editoptions:{id:“2”,checked:“false”,checked2:“true”}
    猜你喜欢
    • 2011-09-25
    • 1970-01-01
    • 2012-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多