首页 > 解决方案 > 未捕获的类型错误:无法访问属性“长度”,e 未定义

问题描述

我正在尝试使用 pdf make 将 html 表转换为 pdf,但我不断收到此错误

未捕获的类型错误:无法访问属性“长度”,e 未定义 在此处输入图像描述

这是我的代码

< center>
    <button class="btn btn-success" onclick="downloadDoc()">Download PDF</button>
</center>

这是我的所有链接的javascript代码

<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="DataTables/datatables.min.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/pdfmake.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/pdfmake.min.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/vfs_fonts.js"></script>
<script type="text/javascript" src="js/pdfmake/js/html2canvas.min.js"></script>


<script type="text/javascript" src="js/theme.js"></script>
<script type="text/javascript" src="js/withdraws_report.js"></script>
<script type="text/javascript" src="js/notifications.js"></script>

<!-- code for js pdf libray -->

<script type="text/javascript">
function downloadDoc() {

    html2canvas($("#le_table")[0], {
        onrendered: function(canvas) {
            var data = canvas.toDataURL();
            var docDefinition = {
                content: [{
                    image: data,
                    width: 500
                }]
            };
            pdfMake.createPdf(docDefinition).download("Table.pdf");
        }
    })
}
</script>


标签: javascriptphphtmlpdfmake

解决方案


您的错误图片显示“未定义 htmltocanvas”。只需使用npm install html2canvas

function downloadDoc() {
html2canvas(document.querySelector("#capture")).then(canvas => {
    document.body.appendChild(canvas)
});
}
<script src="https://github.com/niklasvh/html2canvas/releases/download/vtest2/html2canvas.js"></script>
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="DataTables/datatables.min.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/pdfmake.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/pdfmake.min.js"></script>
<script type="text/javascript" src="DataTables/pdfmake-0.1.36/vfs_fonts.js"></script>
<script type="text/javascript" src="js/pdfmake/js/html2canvas.min.js"></script>
<script type="text/javascript" src="js/theme.js"></script>
<script type="text/javascript" src="js/withdraws_report.js"></script>
<script type="text/javascript" src="js/notifications.js"></script>

<button id="capture" class="btn btn-success" onclick="downloadDoc()">Download PDF</button>


推荐阅读