将jQgrid中的数据从jquery代码导出为pdf

时间:2017-06-01 06:05:17

标签: jquery jqgrid export-to-pdf

我在页面中使用了jQgrid。我需要将网格中显示的数据导出为pdf和excel。我创建了一个按钮并添加了像

这样的代码
 jQuery("#btnExportPdf").on("click", function(){
                jQuery("#jqGrid").jqGrid("exportToPdf",{
                    title: 'Export to PDF',
                    orientation: 'portrait',
                    pageSize: 'A4',
                    description: 'Meeting Details',
                    customSettings: null,
                    download: 'download',
                    includeLabels : true,
                    includeGroupHeader : true,
                    includeFooter: true,
                    fileName : "Meetings.pdf"
                })
            }) 

我还需要做什么?

1 个答案:

答案 0 :(得分:1)

尝试使用此功能

    function exportGrid() {
        mya = $("#" + table).getDataIDs(); // Get All IDs
        var data = $("#" + table).getRowData(mya[0]); // Get First row to get the
        // labels
        var colNames = new Array();
        var ii = 0;
        for (var i in data) {
            colNames[ii++] = i;
        } // capture col names

        var html = "<html><head>"
        + "<style script=&quot;css/text&quot;>"
        + "table.tableList_1 th {border:1px solid black; text-align:center; "
        + "vertical-align: middle; padding:5px;}"
        + "table.tableList_1 td {border:1px solid black; text-align: left; vertical-align: top; padding:5px;}"
        + "</style>"
        + "</head>"
        + "<body style=&quot;page:land;&quot;>";


        for (var k = 0; k < colNames.length; k++) {
            html = html + "<th>" + colNames[k] + "</th>";
        }
        html = html + "</tr>"; // Output header with end of line
        for (i = 0; i < mya.length; i++) {
            html = html + "<tr>";
            data = $("#" + table).getRowData(mya[i]); // get each row
            for (var j = 0; j < colNames.length; j++) {
                html = html + "<td>" + data[colNames[j]] + "</td>"; // output each Row as
                // tab delimited
            }
            html = html + "</tr>"; // output each row with end of line
        }
        html = html + "</table></body></html>"; // end of line at the end
        alert(html);
        html = html.replace(/'/g, '&apos;');
    }

Reference