我正在使用jqGrid显示数据库表并使用ASP.NET代码隐藏文件中的DataSet加载JQGrid。列也是在运行时从文件后面的代码生成的。我有两列(PrimaryKey列[不是自动增量字段],文本字段列)我希望使用添加表单为这两列提供添加功能,但只为一列提供编辑功能,即使用内联编辑的文本字段列。
这类似于报告的问题here,答案非常接近我想要的。我也找到了其他解决方案,但大多数解决方案都使用JSON格式的数据,并从Javascript加载。
我很难搞清楚上述功能,因为数据已经从数据库加载,我只想修改editable属性。默认情况下,我有主要字段不可编辑和文本字段 - 可编辑。
我真的很感激任何帮助。
答案 0 :(得分:1)
The answer面向内联编辑模式。如果使用表单编辑,我建议您关注this。您可以将两者结合起来强制beforeShowForm
内部的两个列都可以在“添加”表单中进行编辑,并且只有在编辑表单或内联编辑时才能编辑一列。
更新:从您发送给我的电子邮件中,我首先发现您使用了错误的标记jqgrid代替jqgrid-asp.net。因此,您使用商业jqSuite产品而不是免费的开源JavaScript jQuery插件jqGrid。我回答你如何解决jqGrid中的问题,但问题是如何在提供jqSuite的.NET类中使用相同的。
如果您可以在the answer中找到解决方案。您应该只修复代码中的输入错误,并使用不同的属性JQGrid1.ClientSideEvents.AfterAddDialogShown
和JQGrid1.ClientSideEvents.AfterEditDialogShown
。