0

我正在使用多选功能选择行并将数据传递给控制器​​,使用 getRowData 传递整行而不是传递单个单元格值。当用户选择单行的复选框时,我会触发 onSelectRow 事件。我能够使用 getRowData 检索行数据并将其传递给接受字符串但数据为空的控制器。下面是我的 onSelectRow 事件。

onSelectRow: function (row_id) {

var rowData = $("#employee").getRowData(row_id);
$.ajax({
     type: 'POST',
     url: '/Home/Create/',
     data: { gridData: rowData },
     dataType: "json"
});

这是我接受字符串参数的控制器操作。

public ActionResult Create(string gridData) {}

我已经阅读了其他帖子并尝试在发送到控制器之前使用 Json.stringify 但我很难将其转换为我需要的格式,因此获取行数据对我来说会更灵活地操作它。

我的控制器操作应该接受什么参数以适当地检索 gridData?

非常感谢任何建议!

4

1 回答 1

0

好的,我遇到了你的问题,首先不要像这样传递 row_id

var sel_id = jQuery("#grid").jqGrid('getGridParam', 'selrow');

这将为您提供所选行的 ID,然后您可以获得这样的数据

var val =  jQuery("#grid").jqGrid('getRowData', sel_id);

然后当您发送数据时,您需要对其进行字符串化...让我向您展示一个示例,其中我选择所有行并将数据发送到控制器...看看我的答案在这里

MultiSelect jqgrid MVC3的OnClickButton函数参数

于 2012-07-27T05:26:26.023 回答