【发布时间】:2019-11-15 08:34:37
【问题描述】:
我正在尝试在我的发票应用程序中实现打印功能,但是,我的打印功能只对我有用一次 - 即仅在第一次点击时。当我尝试再次单击时,不会触发单击功能。当我检查我的 console.log 时,会抛出以下错误: ERROR TypeError: Cannot read property 'postMessage' of null
这是我尝试过的:
printInvoice() {
const printContents = document.getElementById('print-index-invoice').innerHTML;
const originalContents = document.body.innerHTML;
document.body.innerHTML = printContents;
window.print();
document.body.innerHTML = originalContents;
}
<div class="modal fade" id="modalIndexInvoicePreview" tabindex="-1" role="dialog">
<button type="submit" class="btn btn-info btn-lg mt-2 position-absolute" (click)="printInvoice()">
<i class="fa fa-print icon-print"></i>Print</button>
<div class="modal-dialog modalContent">
<div class="modal-content modalIndexInvoicePreview" id="print-index-invoice">
<div class="modal-header div-logo">
<img class="logo-invoice" [src]="logoUrl">
<div>
<b>Invoice|Receipt|Attachment</b>
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
标签: javascript html angular printing