【发布时间】:2011-01-24 20:48:29
【问题描述】:
我正在使用 JqGrid,但我需要更多地控制在表单编辑/插入中单击“保存”按钮时会发生什么。理想情况下,我想使用我自己的 $.ajax() 调用将所有表单数据发送到服务器,而不是依靠网格使用 editurl 来完成。
有没有办法做到这一点?
【问题讨论】:
标签: jqgrid
我正在使用 JqGrid,但我需要更多地控制在表单编辑/插入中单击“保存”按钮时会发生什么。理想情况下,我想使用我自己的 $.ajax() 调用将所有表单数据发送到服务器,而不是依靠网格使用 editurl 来完成。
有没有办法做到这一点?
【问题讨论】:
标签: jqgrid
jqGrid 支持ajaxEditOptions、editData 选项serializeEditData、errorTextFormat、afterSubmit 和onclickSubmit 事件和许多其他表单编辑options 和events。这些功能允许您对editurl(参见onclickSubmit)进行几乎完全的动态定制,发送附加参数(参见editData)或禁止向服务器发送一些标准参数(参见serializeEditData)。对于ajaxEditOptions,您可以从jQuery.ajax 参数中更改任何参数(使用contentType: "application/json" 或HTTP PUT 而不是POST)。发送到服务器的数据可以根据您的自定义函数进行序列化(请参阅serializeEditData),并且可以使用您的函数解码响应(请参阅afterSubmit 或errorTextFormat,以防出现服务器错误)。您可以在添加新行后制作一些突出显示或其他动画效果(请参阅afterComplete)。我可以继续...
我建议您尝试使用我上面列出的功能,而不是覆盖表单编辑的标准机制。
如果您在问题中更准确地描述您想要实现什么,我(或其他人)可以尝试向您解释您可以使用哪些 jqGrid 功能。
【讨论】: