2014-02-07 136 views
1

我将JqGrid设置为treegrid,并通过发布请求通过ajax检索行数据。两个问题:我们使用防伪令牌来保护我们网站上的任何帖子......并且我们需要将过滤器参数发送回服务器,除了知道哪些行被展开(所以我们可以返回层次结构的下一部分树)。jqGrid在请求数据之前修改发布数据

我可以修改postData,但我需要注入多个值到列表中,这可以更改。我尝试设置网格的dataType为“本地”,一旦postData被修改并触发了网格的重新加载,则将其切换回“json”,但这也不起作用(并且看起来像是黑客)

是否有一个我可以绑定的事件,允许我在发送帖子之前立即将数据注入postData?如果没有,有没有人知道我应该添加的jqGrid代码库的位置?文档相当缺乏像这样的东西。

谢谢!

回答

2

我不确定我是否正确理解您的问题。可能您需要在postData内使用functions(请参阅the answer)。一个更好的回调是serializeGridData。它使您可以完全控制将发送到服务器的数据。如果你想结合这两种方法,那么我会转发给你the answer(或this one)。

如果您需要设置一些附加的HTTP标头,例如在Ajax请求中,那么loadBeforeSend回调将是最佳选择。有关简单的代码示例,请参见the answer

+0

我已经开始浏览jqGrid代码库,并在发送回复时发现了serializeGridData权限......哈哈。我应该能够使用该事件,而不是使用它来序列化数据,只需使用我的其他表单参数将它​​传回新的postData对象。谢谢奥列格! –

+0

@LostInJavaScriptLand:不客气! – Oleg