1

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>

しかし、機能していません。コンソールにエラーメッセージを表示することはありません

また、次のように、jquery イベントの代わりに onclick イベントを変更しようとしています。

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 関数を結果なしで生成しようとしました。何か案は?

4

1 に答える 1