【问题标题】:jqgrid functionality to allow adding two columns using add-form but to allow editing of only one column by inline-edit optionjqgrid 功能允许使用 add-form 添加两列,但允许通过 inline-edit 选项仅编辑一列
【发布时间】:2012-06-04 20:19:48
【问题描述】:

我正在使用 jqGrid 显示数据库表并使用来自 ASP.NET 代码隐藏文件的 DataSet 加载 JQGrid。列也是在运行时从文件后面的代码生成的。我有两列(PrimaryKey 列[不是自动增量字段],文本字段列),我想使用 add-form 为两列提供添加功能,但仅对一列提供编辑功能,即使用内联编辑的文本字段列.

这类似于here 报告的问题,答案非常接近我想要的。我也找到了其他解决方案,但大多数解决方案使用 JSON 格式的数据并从 Javascript 加载。

我很难弄清楚上述功能,因为数据已经从数据库中加载,我只想修改可编辑属性。默认情况下,我有 Primary field not-editable 和 Text field - editable。

我非常感谢任何帮助。

【问题讨论】:

    标签: c# asp.net jqgrid-asp.net


    【解决方案1】:

    您引用的The answer 是面向内联编辑模式的。如果使用表单编辑,我建议您关注this。您可以将两者结合起来以强制在 beforeShowForm 内部,两列都可以在“添加”表单中进行编辑,并且在“编辑”表单或内联编辑的情况下只能编辑一列。

    更新:从您发给我的电子邮件中,我首先可以发现您在问题中使用了错误的标签jqgrid 而不是jqgrid-asp.net。所以你使用了商业 jqSuite 产品而不是免费的开源 JavaScript jQuery 插件 jqGrid。我回答了你如何在 jqGrid 中解决问题,但你的问题是如何在提供 jqSuite 的 .NET 类中使用它。

    如果您可以在the answer 中找到解决方案。您应该只修复代码中的输入错误并使用不同的属性JQGrid1.ClientSideEvents.AfterAddDialogShownJQGrid1.ClientSideEvents.AfterEditDialogShown

    【讨论】:

    • 感谢您的回复,但我面临的问题是我没有此部分
      jQuery("#list").jqGrid({ data: mydata, colModel: [ ]//... })
      因为数据是从后面的代码填充到 jqgrid 中的文件 & 当我尝试使用 beforeShowForm 只写最后一部分时,网格不显示任何内容。
      我第一次使用 jqgrid,不知道执行此功能的正确方法。我已经看到了你的几个答案,他们真的很重要,但我没有在这里应用这些答案。你能建议一些代码来解决这个问题吗?
    • @user967539:我不确定我的理解是否正确。如果您最初在所有列中设置editable: true,或者如果您只使用cmTemplate: {editable: true}(请参阅here),那么您应该没有问题。您需要在beforeShowForm隐藏一些可编辑的列,以使其不可编辑。
    • 非常感谢您的帮助。有效!我很抱歉我的错误
    猜你喜欢
    • 1970-01-01
    • 2012-07-19
    • 2021-04-16
    • 1970-01-01
    • 2017-06-28
    • 1970-01-01
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    相关资源
    最近更新 更多