【发布时间】:2011-04-23 09:55:21
【问题描述】:
我有一些列的 jqGrid,我想在“添加”对话框中添加其他字段,这些字段不在网格中显示,而是在请求中发送。我怎样才能使这个功能发挥作用?
【问题讨论】:
-
我想回答你的另一个问题,然后再重读一遍这个问题。第一次我的答案是错误的问题。我更新了我的答案。如果您想以任何方式在未来的评论答案中收到答案,请。没有你方的任何回应,我认为回答毫无意义。
标签: jqgrid
我有一些列的 jqGrid,我想在“添加”对话框中添加其他字段,这些字段不在网格中显示,而是在请求中发送。我怎样才能使这个功能发挥作用?
【问题讨论】:
标签: jqgrid
您可以在beforeShowForm 事件处理程序中修改添加对话框。你可以看到一个工作示例here。这个例子是我对"jqGrid: Disable form fields when editing" 问题的回答(另请参阅关闭问题"How to add a simple text label in a jqGrid form?")
已更新:我重新阅读了您的问题,并且可以看到我最初回答了您提出的另一个问题。您需要的只是使用editData 参数,例如
$("#list").jqGrid('navGrid','#pager',{del:false,search:false,refresh:false},
{}, // edit parameters
{ // add parameters
url: '/myAddUrl',
editData: {
someStaticParameter: "Bla Bla",
myDynamicParameter: function() {
return (new Date()).toString();
}
}
}
);
见demo。该演示在服务器端没有任何内容,但您可以通过Fiddler 或Firebug 轻松验证发送到服务器的数据是否包含someStaticParameter 和myDynamicParameter 参数。
【讨论】:
这个不错。我要投这个票。
此解决方案适用于我正在寻找的内容。我有一个包含典型用户名、密码等详细信息的用户表。我也有一个编辑和添加按钮。
在安全方面,将所有用户连同他们的密码一起发送是不好的。因此,在编辑表单中,管理员只能编辑除密码之外的所有内容。
在添加表单中,管理员可以使用新密码创建新帐户。由于网格中不存在密码字段,因此不会在添加表单中显示。按照这个例子,我可以添加一个自定义字段而不暴露我的用户密码。非常感谢奥列格
【讨论】: