用户选择的打开文件

时间:2018-10-17 17:00:09

标签: javascript html angularjs ng-file-upload

我有下面的代码,如果用户愿意,我想在新选项卡中显示添加的pdf(使用输入元素)或打开文件。

这有可能吗?

<div class="uploadButtonSection">
   <input type="image" src="clip.png" ngf-select="uploadFiles($files)" multiple
            accept="application/pdf" ngf-max-height="1000" ngf-max-size="5MB" class="uploadIcon"/>

 <ul class="uploadList">
    <li ng-repeat="file in files" style="font:smaller">   
       <div class="attachmentIcon">
         <a href="#" target="_blank"><img src="pdf-icon.png"></a>
         <div class="customBtn" ng-click="removeFile(file)">Remove</div>
            {{file.name}}
       </div>     
    </li>
 </ul>
</div>

1 个答案:

答案 0 :(得分:1)

您可以使用URL.createObjectURL并将其传递给您。

let url = URL.createObjectURL(selectedFile);
window.open(url, "_blank");

这里是fiddle,供您快速了解。

但是问题在于,大多数浏览器都会在您选择文件后阻止您打开新标签页。 <<< strong>弹出窗口被阻止>>

您可以尝试显示一些按钮来打开该文件。有点类似于this fiddle,但我不确定这在所有情况下是否都适用。