阻止PDF自动下载并改为自动打印

时间:2016-03-18 21:06:05

标签: javascript jquery pdf

我的情况是,当用户查看其订单历史记录时,会向他们提供指向打印其发票的PDF版本的链接。目前,当用户点击链接时,PDF将自动下载到他们的计算机。

'高层'想要改变,所以当用户点击链接打印pdf时,会出现一个打印对话框而不是自动下载PDF。

我已经能够在新窗口中打开pdf,但是当调用pdf时,它将不会显示pdf,而是会自动下载它。

我在互联网上搜索了SO以寻找解决方案但尚未产生任何结果。如果可能,这需要通过JavaScript或jQuery完成。

HTML

<p><a id="print_pdf" target="_blank">Click to Print Invoice</a>

JavaScript / jQuery

var print_pdf_link = $('#print_pdf').attr('href');
var linkNo2 = "privatefile.dhtml~useridtext~&file=~username~_rep.pdf";
$('#print_pdf').click(function(){
  w = window.open(linkNo2);
  w.print();
});

我也用过:

<a href="#" onclick="window.open('privatefile.dhtml~useridtext~&file=~username~_rep.pdf', '_blank', 'fullscreen=yes'); return fal
se;">MyPDF</a>

* 请注意代字号之间的文字是包含来自后端的值的占位符

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

尝试一下,希望我能利用它。

var pfHeaderImgUrl = '';
var pfHeaderTagline = '';
var pfdisableClickToDel = 0;
var pfHideImages = 0;
var pfImageDisplayStyle = 'right';
var pfDisablePDF = 0;
var pfDisableEmail = 0;
var pfDisablePrint = 0;
var pfCustomCSS = '';
var pfBtVersion = '1';

(function() {
  var js, pf;
  pf = document.createElement('script');
  pf.type = 'text/javascript';

  if ('https:' === document.location.protocol) {
    js = 'http://domain.com//main.js'
  } else {
    js = 'http://domain.com/printfriendly.js'
  }
  pf.src = js;
  document.getElementsByTagName('head')[0].appendChild(pf)
})();
<a href="" 
   style="color:#6D9F00;text-decoration:none;"
   class="printfriendly" 
   onclick="window.print();return false;"
   title="Print">Print</a>

相关问题