2016-05-26 3 views
1

Ich habe diese JS und ich tun würde, wie pdf in einem iframe-Tag zu erzeugen, indem diese (aus pdfmake) jsPDF erzeugen mit pdfmake in iframe-Tag

function start(){ 
    var docDefinition = { 
    content: [ 
    { 
     table: { 
     multiple pages 

     headerRows: 1, 
     widths: [ '*', 'auto', 100, '*' ], 

     body: [ 
      [ 'First', 'Second', 'Third', 'The last one' ], 
      [ 'Value 1', 'Value 2', 'Value 3', 'Value 4' ], 
      [ { text: 'Bold value', bold: true }, 'Val 2', 'Val 3', 'Val 4' ] 
     ] 
     } 
    } 
    ] 
    }; 

    pdfMake.createPdf(docDefinition).open(); 

} 

Zeigen Sie die pdf in diesem iframe:

<frameset cols="25%,*,25%"> 
     <frame src=""> 
    </frameset> 

Wenn ich in diese Schaltfläche klicken:

<button type="submit" name="save" class="btn btn-default" onclick="start();">Savw</button> 

dank.

Antwort

2

Ich denke, mein Setup ist etwas anders, aber versuchen Sie das - etwas ähnliches funktionierte für mich.

Erstens stellen eine ID auf <frame src="" id="foo"> dann

// pdfMake.createPdf(docDefinition).open(); 
var doc = pdfMake.createPdf(docDefinition); 
var f = document.getElementById('foo'); 
var callback = function(url) { f.setAttribute('src',url); } 
doc.getDataUrl(callback, doc); 

Die Funktion getDataUrl ersetzen wird mit der Callback-Funktion mit der erzeugten URL als Argument. Dieser Callback sollte das src-Attribut für Ihren Frame festlegen. Mein Rückruf enthält auch console.log(url);, damit ich sehen kann, was passiert.

Verwandte Themen