Avatar billede Driton Seniormester
15. maj 2019 - 12:22 Der er 3 kommentarer og
1 løsning

jspdf funktionen virker ikke får "specialElementHandlers is not defined"

div id="container" class="container">
Nogle tables
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/0.9.0rc1/jspdf.min.js"></script>
    <script>
var doc = new jsPDF();

window.onload = function() { 
    doc.fromHTML($('#container').html(), 15, 15, {
        'width': 170,
        'elementHandlers': specialElementHandlers
    });
    doc.save('1.pdf');
};
    </script>

jeg ved ikke hvorfor jeg stadig får den fejl, når container er defineret. Jeg har jquery, men den ligger bare på masterpagen.
Avatar billede Slater Ekspert
15. maj 2019 - 12:27 #1
Men hvad er specialElementHandlers? Hvor kommer den variabel fra? Den er ikke i det kode du viser, og ikke i den inkluderede js-fil.
Avatar billede Driton Seniormester
15. maj 2019 - 12:32 #2
Tror fra jsPDF, den er med her
https://codepen.io/nagasai/pen/JKKNMK
Avatar billede Slater Ekspert
15. maj 2019 - 12:37 #3
Men der bliver den sat:

var specialElementHandlers = {
    '#editor': function (element, renderer) {
        return true;
    }
};

Det gør du ikke i din kode, så med mindre der er noget du ikke viser os, er det klart den er undefined.
Avatar billede Driton Seniormester
15. maj 2019 - 12:51 #4
Tror det var fordi jeg fulgte den her først

https://scotch.io/@nagasaiaytha/generate-pdf-from-html-using-jquery-and-jspdf

herude står

var specialElementHandlers = {
    '#editor': function (element, renderer) {
        return true;
    }
};

ikke på, først når man klikker ind på eksemplet :S
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester