我的意思是:用户点击一些“打印”按钮并打印机开始打印。这可能吗?
请注意已经存在的服务器进程(通过AJAX)可以返回打印成功(或显示的html,无论如何)或错误以显示警报。那不是问题。
编辑:
经过一些快速评论(谢谢!)我的意思是“打开打印对话框”而不是“开始打印”。
答案 0 :(得分:2)
您已有HTML页面;按钮所在的那个。您可以使用media
asttribute或@media
指令为屏幕和打印机的页面设置不同的样式表。您可以在打印页面时使用不同的外观和布局,或者甚至可以使用完全不同的元素集。
示例:
#PrintContent { display: none; }
@media print {
#RegularContent { display: none; }
#PrintContent { display: block; }
}
要让按钮打印页面,只需使用print
方法:
<input type="button" onclick="window.print();" value="Print me!" />
这当然不仅仅是开始打印,而是打开打印对话框。要在没有该对话框的情况下打印某些内容,您需要在浏览器中运行一个组件,但启动该组件需要用户确认,因此您无论如何都会得到一个对话框,而且会更加令人生畏。
答案 1 :(得分:0)
我会打开一个新页面,显示服务器上的打印HTML并从其onload处理程序中调用window.print()