我有这个JS,我想使用这个js(用pdfmake制作)在iframe标签中生成pdf
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();
}
在此iframe中显示pdf:
<frameset cols="25%,*,25%">
<frame src="">
</frameset>
当我点击此按钮时:
<button type="submit" name="save" class="btn btn-default" onclick="start();">Savw</button>
感谢。
答案 0 :(得分:3)
我认为我的设置略有不同,但试试这个 - 类似的东西对我有用。
首先,在<frame src="" id="foo">
上添加ID,然后替换
// 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);
getDataUrl函数使用生成的url作为参数运行回调函数。该回调应该在您的帧上设置src属性。我的回调还包括console.log(url);
,因此我可以看到发生了什么。