Read PDF file in a new tab of same browser

不羁的心 提交于 2019-12-23 12:32:50

问题


In a HTML table I am showing a list of data containing pdf files. All the pdf file name are hyperlinks. When user clicks on that hyper link the pdf should open in a new tab. Basically on click of the hyperlink I am calling an JS function, which calls an method to the server side. In the server side scripting I have written the below code.

wrapper = FileWrapper(file(file_name))
response = HttpResponse(wrapper, mimetype='application/pdf; charset=utf-8')
response['Content-Disposition'] = 'inline; filename=' + file
response['Content-Length'] = os.path.getsize(file_name)
return response

This code is working fine and on click of the link the file opens, but I want to open it in a new tab instead of the same tab. I have already checked with using target=_blank, but no luck. Is there any way we can do through content-"options" or any other solution.

I am using Django as my server side scripting.


回答1:


You can open a new tab/window from your JavaScript and load the results in there:

function openPDF(url){
   var w=window.open(url, '_blank');
   w.focus();
}


<div onclick="openPDF('pdf/1.pdf');">PDF 1</div>
<div onclick="openPDF('pdf/2.pdf');">PDF 2</div>



回答2:


You also can add a class on your links instead of using an inline event.

It look like this, in jQuery :

$('a.extLink').click(function(){
    window.open(this.href);
    return false;
});


来源:https://stackoverflow.com/questions/21524316/read-pdf-file-in-a-new-tab-of-same-browser

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!