jquery 跳过预览 打印文件流
时间: 2023-07-31 12:07:25 浏览: 148
可以使用 jQuery 的 Ajax 功能来获取文件流并打印,不需要预览。
首先,使用 jQuery 的 Ajax 功能来获取文件流:
```javascript
$.ajax({
url: 'your_file_path',
type: 'GET',
xhrFields: {
responseType: 'blob'
},
success: function(data) {
// 打印文件流
printBlob(data);
}
});
```
其中 `responseType: 'blob'` 表示返回的数据类型为二进制流。
接下来,定义一个 `printBlob` 函数来打印文件流:
```javascript
function printBlob(blob) {
var blobUrl = URL.createObjectURL(blob);
var iframe = document.createElement('iframe');
iframe.style.display = 'none';
iframe.src = blobUrl;
document.body.appendChild(iframe);
iframe.onload = function() {
setTimeout(function() {
iframe.contentWindow.print();
}, 0);
};
}
```
这个函数将二进制流转换为 Blob URL,创建一个隐藏的 iframe,并将 Blob URL 赋值给 iframe 的 src 属性,然后在 iframe 加载完成后调用 `print()` 方法来打印文件。
阅读全文