Javascript 数据表PDF导出不完整

Javascript 数据表PDF导出不完整,javascript,jquery,datatables,Javascript,Jquery,Datatables,我有一个简单的html表格。分页已关闭,因此页面上显示大约50行。excel导出非常有效。PDF导出仅显示1页,约占内容的三分之一。是否有导出所有行的简单方法?即使分页设置为true,导出仍然不完整。在做了一些研究之后,我所拥有的应该是有效的。我就是不明白为什么它失败了,只导出了一页 <script> $(document).ready(function() { $('#summary_table').DataTable( { dom: 'Bfrtip', butt

我有一个简单的html表格。分页已关闭,因此页面上显示大约50行。excel导出非常有效。PDF导出仅显示1页,约占内容的三分之一。是否有导出所有行的简单方法?即使分页设置为true,导出仍然不完整。在做了一些研究之后,我所拥有的应该是有效的。我就是不明白为什么它失败了,只导出了一页

<script>

$(document).ready(function() {
$('#summary_table').DataTable( {
    dom: 'Bfrtip',
    buttons: [
        'excelHtml5',
                    {
            extend: 'pdfHtml5',
            orientation: 'landscape',
            pageSize:'LEGAL'
        }
    ],
paging:false

} );
  } );

</script>

$(文档).ready(函数(){
$('汇总表')。数据表({
dom:'Bfrtip',
按钮:[
“卓越HTML5”,
{
扩展:“pdfHtml5”,
定位:'景观',
页面大小:'LEGAL'
}
],
分页:false
} );
} );
html具有这种结构

<table class="display">
    <thead>
        <tr>
            <th></th>
            <th></th>
            <th></th>
        </tr>
    </thead>
    <tr>
        <th></th>
        <th></th>
        <th></th>
    </tr>
    <tr>
        <th></th>
        <th></th>
        <th></th>
    </tr> 
    .
    .
    .
</table>

.
.
.

导出前设置页面设置

protected void btnSubmit_Click(object sender, EventArgs e)
        {       
            WebClient wc = new WebClient();
            string url = Request.Url.AbsoluteUri;
            string fileContent = wc.DownloadString(url); 
            List<string> tableContents = GetContents(fileContent, table_pattern);
            string HTMLString = String.Join(" ", tableContents.ToArray());   
            Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
            PdfWriter.GetInstance(pdfDoc, Response.OutputStream);             
            pdfDoc.Open();
            pdfDoc.Add(new Paragraph("Welcome to dotnetfox"));
            List<IElement> htmlarraylist = HTMLWorker.ParseToList(new StringReader(HTMLString), null);
            for (int k = 0; k < htmlarraylist.Count; k++)
            {
                pdfDoc.Add((IElement)htmlarraylist[k]);
            } 
            pdfDoc.Close();
            Response.ContentType = "application/pdf";
            Response.AddHeader("content-disposition", "attachment;" +
                                           "filename=sample.pdf");
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.Write(pdfDoc);
            Response.End();       
        }   
    }
protectedvoid btnSubmit\u单击(对象发送方,事件参数e)
{       
WebClient wc=新的WebClient();
字符串url=Request.url.AbsoluteUri;
string fileContent=wc.DownloadString(url);
List tableContents=GetContents(fileContent,table_模式);
字符串HTMLString=string.Join(“,tableContents.ToArray());
文档pdfDoc=新文档(PageSize.A4、10f、10f、10f、0f);
GetInstance(pdfDoc,Response.OutputStream);
pdfDoc.Open();
pdfDoc.Add(新段落(“欢迎使用dotnetfox”);
List htmlaraylist=HTMLWorker.parsetList(新的StringReader(HTMLString),null);
for(int k=0;k
我不知道您包含的js和css。你可以试试这个。这是一个

别忘了包括这些文件

//cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js //cdn.rawgit.com/bpampuch/pdfmake/0.1.27/build/pdfmake.min.js //cdn.rawgit.com/bpampuch/pdfmake/0.1.27/build/vfs_font.js //cdn.datatables.net/buttons/1.4.0/js/buttons.html5.min.js


datatables站点有以下pdfmake CDN示例

<script src="https://cdn.rawgit.com/bpampuch/pdfmake/0.1.27/build/pdfmake.min.js"></script>
<script src="https://cdn.rawgit.com/bpampuch/pdfmake/0.1.27/build/vfs_fonts.js"></script>

我从代码中删除了上述内容,并通过cdnjs将其替换为0.1.32版本。PDF按钮产生了一个完整的所有网页现在导出

<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/pdfmake.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/vfs_fonts.js"></script>

确认,所有这些。我几乎要放弃这个了。也许问题出在我的浏览器版本上。我将不得不与Excel一起工作。
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/pdfmake.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/vfs_fonts.js"></script>