触发附加锚标记的点击事件

时间:2017-11-20 10:59:49

标签: javascript jquery

我附加了<a>标记,其中href带有下载属性。

$('<a>Download</a>').attr({
    download: 'testing.svg',
    href: dataUrl,
    id: 'download',
    name: 'test'
    // style:'display:none'
}).appendTo("body");

这是我的代码,我想触发click事件:

$('#download').trigger( "click" );

这不起作用,因为它是一个附加元素。

我尝试使用window.open(href,'_blank');,但如果我运行此语句,则文件不会下载。它只是打开一个新标签。

如何在不重定向的情况下下载文件?

2 个答案:

答案 0 :(得分:1)

JQuery trigger不支持下载。请使用以下代码触发下载。

$('#download').get(0).click();

答案 1 :(得分:1)

尝试这样的事情:

 $(document).ready(function(){
   var dataUrl = "https://upload.wikimedia.org/wikipedia/commons/8/88/Inkscape_vectorisation_test.svg"
   $dnl_link = $('<a>Download</a>').attr({
        download:'testing.svg',
        href:dataUrl,
        id:'download',
        name: 'test',
        
    })
    $dnl_link.appendTo("body");
 
  $("#download")[0].click();
  
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body></body>