0

我正在使用 mvccontrib 网格来显示搜索结果数据并导出到 excel。

我发现这篇文章用于将数据导出到 excel 并成功实施。

在我的解决方案中,我的 gridview 有一个复选框列,支持用户选择他们想要导出的行数然后导出到 excel。

请建议我解决方案如何做到这一点。提前致谢

4

1 回答 1

1

我已经解决了我的问题。我使用了一个表单标签,它发布到我的导出控制器。在表单标签内,我使用了一个隐藏字段来存储我在网格上检查过的 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 进行过滤,再次查询数据库。希望这有帮助。

于 2011-05-27T08:11:37.420 回答