Estoy tratando de usar jsPDF para descargar una versión en PDF de mi sitio web. Recibo este error jQuery.Excepción diferida: r[o] no está definido . Creo que tiene que ver con " var source = $("#content")[0] " en el cuerpo de alguna manera no está definido, pero no estoy seguro de si este es el único problema.
Importaciones Necesarias (en cabeza):
<!-- jQuery library --> <script src="static/js/jquery.min.js"></script> <!-- jsPDF library --> <script src="static/js/jsPDF-1.3.2/dist/jspdf.min.js"></script> /* Bootstrap at end of body */ <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
HTML
<div class="container-fluid" id="content"> <div class="row"> <h1>UH ENERGY</h1> </div> <div class="row"> <a href="#" id="downloadPDF" >Download PDF</a> </div> <!--CHART 1--> <div class="row"> <div class="col-md-6 col-sm-12 col-xs-12"> <canvas id="myChart" class="bar-chart"></canvas> <!-- Continued -->
función en main.py
$( document ).ready(function() { var doc = new jsPDF(); var specialElementHandlers = { "#bypassme": function (element, renderer) { return true } }; var margins = { top: 80, bottom: 60, left: 40, width: 522 }; var source = $("#content")[0]; doc.fromHTML( source.innerHTML, margins.left, margins.top, { "width": margins.width, "elementHandlers": specialElementHandlers }, function (dispose) { doc.save("ICEV-EV.pdf"); }, margins ); });