简体   繁体   English

如何在 Javascript 中将 jsPDF 中的 PDF 文件保存在服务器上?

[英]How to save PDF file from jsPDF on a server in Javascript?

 var doc = new jsPDF(); $('#generatereport').click(function() { doc.fromHTML($('#lppresults')[0], 15, 15, { width: 170 }, function() { doc.save('sample-file.pdf'); }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.4/jspdf.min.js"></script> <div class="survey-results" id="lppresults"> <button id="generatereport">Download Report</button> <h1 style="border: solid;">TEST CONTENT</h1><br /> <h1 style="border: solid;">TEST CONTENT1</h1> </div>

I want to save file on the server with JavaScript, but currently I can save this file only on the user's computer.我想用 JavaScript 将文件保存在服务器上,但目前我只能将此文件保存在用户的计算机上。

Instead of doc.save function you have to use doc.output function with type 'blob' as a parameter. 您必须使用类型为'blob' doc.output函数作为参数,而不是doc.save函数。

In Javascript part: 在Javascript部分:

var doc = new jsPDF();
$('#generatereport').click(function()
{
    doc.fromHTML(
        $('#lppresults'), 15, 15,
        {width: 170},
        function()
        {
            var blob = doc.output('blob');

            var formData = new FormData();
            formData.append('pdf', blob);

            $.ajax('/upload.php',
            {
                method: 'POST',
                data: formData,
                processData: false,
                contentType: false,
                success: function(data){console.log(data)},
                error: function(data){console.log(data)}
            });
        }
    );
});

Here is the code for upload.php : 这是upload.php的代码:

<?php
move_uploaded_file(
    $_FILES['pdf']['tmp_name'], 
    $_SERVER['DOCUMENT_ROOT'] . "/uploads/test.pdf"
);
?>

如何使用 jspdf 显示数据库中的表格内容?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM