我有一个标准的角度4表单,其中包含许多与[(ngModel)]指令绑定的字段。我还需要提供一个自定义打印功能,通过(简化使其看起来更清晰)来实现:
let printContents, popupWin;
printContents = document.getElementById('print-section').innerHTML;
popupWin = window.open('', '_blank', 'top=0,left=0,height=100%,width=auto');
popupWin.document.open();
popupWin.document.write(`
<html>
<head>
<title>Print tab</title>
<style>
//........Customized style.......
</style>
</head>
<body onload="window.print();window.close()">${printContents}</body>
</html>`
);
popupWin.document.close();
除了在打印输出中,表单没有显示任何值,因为即使问题得到解答,表单完全是空白,这也很好。我怀疑这是因为输入字段的实际值为null,因为我使用ngModel在幕后设置此值,但是如何使用angular解决此打印问题?
答案 0 :(得分:0)
由于我无法找到解决方案,因此我实施了一种解决方法:每个输入元素都有一个“无打印”字样。 class和我为每一个创建一个元素(文本输入的样式div,收音机和复选框的图像),这些只在打印模式下可见。这有效,但如果有人能想到更好的解决方案,请随时分享。