jquery 如何使用js自动下载PDF?

dfddblmv  于 2022-12-03  发布在  jQuery
关注(0)|答案(5)|浏览(628)

我的场景是PDF文件自动下载,然后用户填写它,当点击PDF中的提交按钮时,它连接到java servlet并将其保存在数据库中。
1.用户点击按钮

  1. JavaScript代码运行和PDF文件自动下载
    1.使用JavaScript自动打开文件
    1.用户填写并按提交
    1.提交servlet代码后运行并将数据保存在数据库中
    在我的应用程序只是第二点是失踪。请提供代码如何与扩展交互使用JavaScript自动下载文件。我只是想下载文件。
cczfrluj

cczfrluj1#

使用download attribute

var link = document.createElement('a');
link.href = url;
link.download = 'file.pdf';
link.dispatchEvent(new MouseEvent('click'));
hs1ihplo

hs1ihplo2#

也可以在新窗口中打开pdf链接,让浏览器处理其余部分:

window.open(pdfUrl, '_blank');

或:

window.open(pdfUrl);
rryofs0p

rryofs0p3#

/* Helper function */
function download_file(fileURL, fileName) {
// for non-IE
if (!window.ActiveXObject) {
    var save = document.createElement('a');
    save.href = fileURL;
    save.target = '_blank';
    var filename = fileURL.substring(fileURL.lastIndexOf('/')+1);
    save.download = fileName || filename;
       if ( navigator.userAgent.toLowerCase().match(/(ipad|iphone|safari)/) && navigator.userAgent.search("Chrome") < 0) {
            document.location = save.href; 
// window event not working here
        }else{
            var evt = new MouseEvent('click', {
                'view': window,
                'bubbles': true,
                'cancelable': false
            });
            save.dispatchEvent(evt);
            (window.URL || window.webkitURL).revokeObjectURL(save.href);
        }   
}

// for IE < 11
else if ( !! window.ActiveXObject && document.execCommand)     {
    var _window = window.open(fileURL, '_blank');
    _window.document.close();
    _window.document.execCommand('SaveAs', true, fileName || fileURL)
    _window.close();
}
}

如何使用?

download_file(fileURL, fileName); //call function
xytpbqjk

xytpbqjk4#

请试试这个
第一个
或者使用download属性HTML5中进行标记

jhkqcmku

jhkqcmku5#

1.对于第二点,将pdf文件的完整路径获取到某个java变量中。例如http://www.domain.com/files/filename.pdf
例如,您使用的是php,而$filepath包含pdf文件路径。
因此您可以编写类似javascript来模拟下载对话框。

<script language="javascript">
    window.location.href = '<?php echo $filepath; ?>';
</script

上面的代码发送浏览器到pdf文件的网址“http://www.domain.com/files/filename.pdf“。所以最后,浏览器将显示下载对话框,以保存在您的机器上的这个文件。

相关问题