【发布时间】:2015-05-07 10:11:51
【问题描述】:
我想在我的控制器中获取jqGrid 的数据。我正在使用这个获取jqGrid 的所有数据
$("#gridSourceKey").jqGrid('getGridParam', 'data')
但我想要 JSON 格式的过滤数据。我怎样才能得到它?
【问题讨论】:
-
我认为 jqGrid 已经获得来自控制器的数据。为什么需要将相同的数据发送回服务器?可能您只需要过滤行的 id 吗?服务器可以直接从数据库中获取其他信息。此外了解您使用的 jqGrid 的哪个分支以及哪个版本非常重要。
-
让我这样说。我有两块代码 1) var gridData = $("#grid").jqGrid('getGridParam','data'); var postData = JSON.stringify(gridData); alert("gridData-"+postData); 2) var gridData1 = $("#grid").jqGrid('getRowData'); var postData1 = JSON.stringify(gridData1); alert("gridData-"+postData1);在第一个块中,我可以使用 JSON.stringify() 解析网格数据,并且可以获得键值对格式的 json 字符串。在第二块中,如果我执行 JSON.stringify() 它会给我 html。如何从“gridData1”获取 json 数据?还有其他解决方法吗?
-
1) 如果你想我问你的问题,你也应该回答我的问题。 2)
getRowData如果需要的数据不在当前页面上,则不能给出完整的数据。 3)getRowData获取未格式化的数据。如果您没有正确填写或使用不正确的colModel属性(例如自定义formatter而没有unformat),那么您可能会遇到单元格的HTML 代码片段的问题。 4) jqGrid 不同版本的结果可能不同 5) 可以使用getDataIDs获取当前页面的行ID,使用getLocalRow获取特定行的数据。 -
我无法添加新问题。所以我在这里写我的问题本身。function exportExcel() { var gridData = $("#grid").jqGrid ('getGridParam','data'); var postData = JSON.stringify(gridData); $.ajax({ type: "POST", contentType: 'application/json', url: "${exportExcelUrl}", data: postData, success: function(response) { if(response=="SUCCESS") { window .location.href='${downloadOfferListExcelUrl}'; } } }); } 这是我的代码
-
但我只需要过滤数据。所以我写了 var gridData = $("#grid").jqGrid('getRowData');如果我调用 JSON.stringify(gridData) 它会给我 json 键值对字符串。但在值中我会得到 html。此外,我需要将此 json 数据传递给我的控制器,这将不起作用。因为控制器想要正确的键值对(但不是 html 值)
标签: jqgrid