0

mvccontrib グリッドを使用して、検索結果データを表示し、Excel にエクスポートしています。

データをExcelにエクスポートするためのこの記事を見つけ、実装に成功しました。

私のソリューションでは、私のグリッドビューには、ユーザーがエクスポートしたい行数を選択してからExcelにエクスポートすることをサポートするチェックボックス列があります。

これを行う方法を教えてください。前もって感謝します

4

1 に答える 1

1

私はすでに問題を解決しました。Export コントローラに投稿するフォーム タグを使用しました。フォーム タグ内で、グリッドでチェックした ID の配列を格納する隠しフィールドを使用しました。次に、javascript を使用してフォームを送信し、非表示のフィールド文字列を Export コントローラーに投稿しました。コントローラーでは、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('');
        });

エクスポート コントローラー: 予想されるリスト オブジェクトを解析するために、(serialize json を使用して) リスト オブジェクトを作成しました。

最後に、期待されるレコードを受け取るために取得した ID を使用してフィルター処理することにより、データベースに再度クエリを実行しました。この助けを願っています。

于 2011-05-27T08:11:37.420 に答える