我正在使用Multiselect功能选择行并使用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?
非常感谢任何建议!
答案 0 :(得分:0)
好吧我得到了你的问题,首先而不是像这样传递row_id
var sel_id = jQuery("#grid").jqGrid('getGridParam', 'selrow');
这将为您提供所选行的ID,然后您可以获得此类数据
var val = jQuery("#grid").jqGrid('getRowData', sel_id);
然后当你发送数据时,你需要对它进行stringfy ...让我给你看一个例子,我选择所有行并将数据发送到控制器......看看我的答案
OnClickButton function parameter for MultiSelect jqgrid MVC3