如何仅从jqgrid发送特定列值?

如何仅从jqgrid发送特定列值?,jqgrid,Jqgrid,我有jqrid,通过JSON加载了多个列和行。目前,点击一个更新按钮,我将所有网格数据以JSON格式发送到服务器,如下所示 $("#updateTradeDetail").click(function () { var griddata = $("#tradeDetailGrid").jqGrid('getGridParam', 'data'); $.ajax({ url : "${pageContext.request.c

我有jqrid,通过JSON加载了多个列和行。目前,点击一个更新按钮,我将所有网格数据以JSON格式发送到服务器,如下所示

$("#updateTradeDetail").click(function () {
        var griddata = $("#tradeDetailGrid").jqGrid('getGridParam', 'data');        
        $.ajax({
            url : "${pageContext.request.contextPath}" + "/XXxxxx/tools/updateTrades",          
            type : "POST",          
            data: JSON.stringify(griddata),         
            dataType: 'html',
            contentType: "application/json; charset=utf-8",
            success : function(msg) {
                alert("Response on update " + msg);             
            },
            error: function (xhr, ajaxOptions, thrownError) {
                alert(xhr.status);
                alert("Error" + thrownError);
            }
        });
    });

如何仅将具有多行的特定列值发送到服务器?

如果需要仅从一列发送数据,则
getCol
将是
getGridParam(“数据”)
的良好替代方案。
getCol
的第二个参数定义了返回数据的格式。在使用
getCol
时应该小心,因为它使用unformature从网格单元(从
元素)获取数据,因此
getCol
getGridParam(“数据”)
返回的数据可能会有点不同

还有一句话。如果网格中没有包含rowid的列(例如
colModel
中具有
key:true
属性的列),则使用
getGridParam(“数据”)
不会获取所有数据。因此,要获取完整数据,需要获取
getGridParam(“数据”)
getGridParam(“\u index”)
。你看,还有很多其他的

可能最安全、最简单的方法就是对
getGridParam(“数据”)
返回的数组进行复制,并通过删除不需要的属性对其进行修改。我想强调复制的重要性,因为
getGridParam(“数据”)
引用返回到包含jqGrid使用的内部数据的数组。因此,如果您要对其进行一些更改,那么这些更改将在下次刷新(排序、分页等)时应用到网格上