我正在使用 mvccontrib 网格来显示搜索结果数据并导出到 excel。
我发现这篇文章用于将数据导出到 excel 并成功实施。
在我的解决方案中,我的 gridview 有一个复选框列,支持用户选择他们想要导出的行数然后导出到 excel。
请建议我解决方案如何做到这一点。提前致谢
我正在使用 mvccontrib 网格来显示搜索结果数据并导出到 excel。
我发现这篇文章用于将数据导出到 excel 并成功实施。
在我的解决方案中,我的 gridview 有一个复选框列,支持用户选择他们想要导出的行数然后导出到 excel。
请建议我解决方案如何做到这一点。提前致谢
我已经解决了我的问题。我使用了一个表单标签,它发布到我的导出控制器。在表单标签内,我使用了一个隐藏字段来存储我在网格上检查过的 ID 数组。然后我调用提交表单,使用 javascript 将隐藏字段字符串发布到导出控制器。在控制器上,我将 Id 解析为数组,然后查询以指定我想要导出的记录。以下是我的结果总结。
<%using (Html.BeginForm("Export", "Test", FormMethod.Post, new {id="frmPost" }))
{ %>
<%=Html.Hidden("cmdListID")%>
....
<%} %>
javascript:
$('#cmdExport').click(function () {
var jsonObj = [];
var strData = "";
$('input[name="SelList"]:checked').each(function () {
jsonObj.push({ key: $(this).attr('id') });
});
var postData = { "listID": jsonObj };
if (jsonObj.length > 0) {
strData = JSON.stringify(postData);
$('#cmdListID').val(strData);
}
$('#frmPost').submit();
$('#cmdListID').val('');
});
导出控制器:我创建了一个列表对象(使用序列化 json)来解析我的预期列表对象。
最后,我通过使用那些我收到预期记录的 ID 进行过滤,再次查询数据库。希望这有帮助。