javascript - 使用 jsPDF 通过 jquery 生成 div 的 PDF

标签 javascript jquery html pdf jspdf

我想使用 jsPDF 从 div 生成一个 PDF 文件,它在静态代码中完美无缺,但我想用生成代码来完成,如下所示:

<button id = "click">Click</button>
<div id = "here"></div>

<script type="text/javascript">
$("#click").click(function(){
  var write = '<div id = "example">Hello</div><button id = "click_pdf">PDF</button>';
  $("#here").html(write);
});

$("#click_pdf").click(function(){
  var doc = new jsPDF;
  doc.fromHTML($("#example").get(0),10,10,{
     'width': 180
  }
  doc.save("Test.pdf");
});
</script>

但不工作,永远不会在控制台中显示错误消息

我还尝试更改一个 onclick 事件而不是 jquery 事件,如下所示:

var write = '<div id = "example">Hello</div><button onclick = click_pdf()>PDF</button>';
...
function click_pdf(){
   var doc = new jsPDF;
   ...
}

在这种情况下,会出现“Uncaught TypeError: Cannot read property '#' of undefined”错误。

我还尝试生成函数 click_pdf() 或 $("#click_pdf").click 在 $("#click").click 函数中没有结果。 有什么想法吗?

最佳答案

试试这个:

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
     <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jspdf/0.9.0rc1/jspdf.min.js"></script>
    <script>

    $(function(){
    $("#click").click(function(){
      var write = '<div id = "example">Hello</div><button id= "click_pdf">PDF</button>';
      $("#here").html(write);
    });
    $(document).on("click","#click_pdf",function(){
      var doc = new jsPDF;
var specialElementHandlers = {
    '#editor': function (element, renderer) {
        return true;
    }
};
        doc.fromHTML($('#example').html(), 15, 15, {
            'width': 170,
            'elementHandlers': specialElementHandlers
        });
      doc.save("Test.pdf");
    });
    });

    </script>


    <input type="button" id="click" value="Click!"/>
    <div id="here"></div>

DEMO

关于javascript - 使用 jsPDF 通过 jquery 生成 div 的 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22670239/

相关文章:

javascript - Google Maps API 邮政编码边界

javascript - 移动 View jquery 上的 Bootstrap 3 侧边栏导航器

php - 下载最新请求的图像比较早请求的图像具有更高的优先级

javascript - 在 Javascript 中按月份拆分表

javascript - 在 JS 中使用反引号 (`` ) 会导致空行

javascript - mysql 结果在 javascript 全局数组中

javascript - 将 html 插入到 contenteditable 中,但在其后添加新文本

javascript - 如何在可拖动和可放置的相对父级中选择类元素

html - C++:如何从网站 HTML 中提取多个 URL 到一个 vector 中?

javascript - 如何更新依赖代码的变量? (JavaScript)