如何在 angularjs 中的特定 div onclick 按钮上创建 Html 到 pdf?

How to create Html to pdf on particular div onclick button in angularjs?

我是 AngularJS 的新手,我想通过单击按钮创建特定 div 的 pdf。目前我有适用于页面加载的代码。如果我 刷新页面,它将自动下载特定的 div。但是我需要在点击事件之后进行下载。这是 我的代码。请帮我。我添加了html2canvas等必要的脚本

html2canvas(document.getElementById('exportthis'), {
        onrendered: function (canvas) {
            var data = canvas.toDataURL();
            var docDefinition = {
                content: [{
                    image: data,
                    width: 500,
                }]
            };
            pdfMake.createPdf(docDefinition).download("Score_Details.pdf");
        }
    }); 

您应该在您的控制器中创建一个函数,并向按钮添加一个点击事件。

您的看法:

<input type="submit" ng-click="createPdf()" value="Create PDF"/>

您的控制器:

$scope.createPdf = function () {

    html2canvas(document.getElementById('exportthis'), {
        onrendered: function (canvas) {
            var data = canvas.toDataURL();
            var docDefinition = {
                content: [{
                    image: data,
                    width: 500,
                }]
            };
            pdfMake.createPdf(docDefinition).download("Score_Details.pdf");
        }
    }); 
};

js点击事件

function myClick() {
  html2canvas(document.body, {
      onrendered: function(canvas) {
          document.body.appendChild(canvas);
      }
  });
}

html

<input type="submit" id="testhtm2canvas" onclick="myClick()" value="html2"/>