Kendo ui 以剑道网格打印所有页面

Kendo ui 以剑道网格打印所有页面,kendo-ui,kendo-grid,kendo-asp.net-mvc,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我正在打印剑道格网的所有页面 我搜索了很多我用过的链接 打印网格,但它打印当前页面。 这样地 注意:链接名称仍然显示为链接,用户可以在打印页面中按它 我尝试使用此代码加载所有页面,但它不起作用,因为它显示打印页面,然后加载包含所有页面项的网格 var dataSource = gridElement.data("kendoGrid").dataSource; dataSource.pageSize(dataSource.total()); 我想以友好的布局打印网格的所有页面,比如

我正在打印剑道格网的所有页面 我搜索了很多我用过的链接

打印网格,但它打印当前页面。 这样地

注意:链接名称仍然显示为链接,用户可以在打印页面中按它

我尝试使用此代码加载所有页面,但它不起作用,因为它显示打印页面,然后加载包含所有页面项的网格

 var dataSource = gridElement.data("kendoGrid").dataSource;
    dataSource.pageSize(dataSource.total());
我想以友好的布局打印网格的所有页面,比如一个导出网格到pdf,它导出友好的网格来打印

编辑1

这是我打印所有网格页面的脚本,但它不起作用

$('#printGrid').click(function () {
    printGrid();
});
function printGrid() {
    var gridElement = $('#PageGrid'),
        printableContent = '',
        win = window.open('', '', 'width=800, height=500');
    var dataSource = gridElement.data("kendoGrid").dataSource;
    dataSource.pageSize(dataSource.total());

    var htmlStart =
       '<!DOCTYPE html>' +
       '<html>' +
       '<head>' +
       '<link href="http://kendo.cdn.telerik.com/' + kendo.version + '/styles/kendo.common.min.css" rel="stylesheet" /> ' +
       '<meta charset="utf-8" />' +
       '<title>@GlobalResources.Print</title>' +
       '<style>' +
       'html { font: 11pt sans-serif; }' +
       '.k-grid { border-top-width: 0; }' +
       '.k-grid, .k-grid-content { height: auto !important; }' +
       '.k-grid-content { overflow: visible !important; }' +
       'div.k-grid table { table-layout: auto; width: 100% !important; }' +
       '.k-grid .k-grid-header th { border-top: 1px solid; }' +
       '.k-grid-toolbar, .k-grid-pager > .k-link { display: none; }' +
       '</style>' +
       '</head>' +
       '<body>';

    var htmlEnd =
            '</body>' +
            '</html>';

    var gridHeader = gridElement.children('.k-grid-header');
    if (gridHeader[0]) {
        var thead = gridHeader.find('thead').clone().addClass('k-grid-header');
        printableContent = gridElement
            .clone()
                .children('.k-grid-header').remove()
            .end()
                .children('.k-grid-content')
                    .find('table')
                        .first()
                            .children('tbody').before(thead)
                        .end()
                    .end()
                .end()
            .end()[0].outerHTML;
    } else {
        printableContent = gridElement.clone()[0].outerHTML;
    }

    doc = win.document.open();
    doc.write(htmlStart + printableContent + htmlEnd);
    doc.close();
    win.print();

}
$('#printGrid')。单击(函数(){
printGrid();
});
函数printGrid(){
var gridElement=$(“#PageGrid”),
可打印内容=“”,
win=窗口。打开(“”,,‘宽度=800,高度=500’);
var dataSource=gridElement.data(“kendoGrid”).dataSource;
pageSize(dataSource.total());
var htmlStart=
'' +
'' +
'' +
' ' +
'' +
“@GlobalResources.Print”+
'' +
'html{font:11pt无衬线;}'+
“.k网格{边框顶部宽度:0;}”+
“.k-grid,.k-grid-content{height:auto!important;}”+
“.k-grid-content{溢出:可见!重要;}”+
'div.k-grid表{表布局:自动;宽度:100%!重要;}'+
“.k-grid.k-grid-header th{border top:1px solid;}”+
“.k-grid-toolbar、.k-grid-pager>.k-link{display:none;}”+
'' +
'' +
'';
var htmlEnd=
'' +
'';
var gridHeader=gridElement.children('.k-grid-header');
if(gridHeader[0]){
var thead=gridHeader.find('thead').clone().addClass('k-grid-header');
printableContent=gridElement
.clone()
.children('.k-grid-header').remove()
(完)
.children(“.k-grid-content”)
.find('表')
.first()
.children('tbody')。在(thead)之前
(完)
(完)
(完)
.end()[0].outerHTML;
}否则{
printableContent=gridElement.clone()[0].outerHTML;
}
doc=win.document.open();
文档写入(htmlStart+printableContent+htmlEnd);
doc.close();
win.print();
}
var gridElement=$(“#PopUpGrid”),
可打印内容=“”,
win=窗口。打开(“”,,“宽度=800,高度=500,可调整大小=1,滚动条=1’),
doc=win.document.open();
var htmlStart=
'' +
'' +
'' +
'' +
“剑道UI网格”+
' ' +
'' +
'';
var htmlEnd=
'' +
'';
var gridHeader=gridElement.children('.k-grid-header');
if(gridHeader[0]){
var thead=gridHeader.find('thead').clone().addClass('k-grid-header');
printableContent=gridElement
.clone()
.children('.k-grid-header').remove()
(完)
.children(“.k-grid-content”)
.find('表')
.first()
.children('tbody')。在(thead)之前
(完)
(完)
(完)
.end()[0].innerHTML;
}否则{
printableContent=gridElement.clone()[0].innerHTML;
}
文档写入(htmlStart+printableContent+htmlEnd);
doc.close();
win.print();
}
我希望你觉得它有用。请随意评论我的错误
谢谢。

更新并输入我的代码
var gridElement = $('#PopUpGrid'),
             printableContent = '',
             win = window.open('', '', 'width=800, height=500, resizable=1, scrollbars=1'),
             doc = win.document.open();

         var htmlStart =
             '<!DOCTYPE html>' +
             '<html>' +
             '<head>' +
             '<meta charset="utf-8" />' +
             '<title>Kendo UI Grid</title>' +
             '<link href="http://kendo.cdn.telerik.com/' + kendo.version + '/styles/kendo.common.min.css" rel="stylesheet" /> ' +
             '</head>' +
             '<body>';

         var htmlEnd =
             '</body>' +
             '</html>';

         var gridHeader = gridElement.children('.k-grid-header');
         if (gridHeader[0]) {
             var thead = gridHeader.find('thead').clone().addClass('k-grid-header');
             printableContent = gridElement
                 .clone()
                 .children('.k-grid-header').remove()
                 .end()
                 .children('.k-grid-content')
                 .find('table')
                 .first()
                 .children('tbody').before(thead)
                 .end()
                 .end()
                 .end()
                 .end()[0].innerHTML;
         } else {
             printableContent = gridElement.clone()[0].innerHTML;
         }

         doc.write(htmlStart + printableContent + htmlEnd);
         doc.close();
         win.print();
     }