1.使用<a>標(biāo)簽來完成
<a href="/user/test/xxxx.txt" download="文件名.txt">點(diǎn)擊下載</a>
這樣當(dāng)用戶打開瀏覽器點(diǎn)擊鏈接的時(shí)候就會(huì)直接下載文件。
但是有個(gè)情況,比如txt,png,jpg等這些瀏覽器支持直接打開的文件是不會(huì)執(zhí)行下載任務(wù)的,而是會(huì)直接打開文件,這個(gè)時(shí)候就需要給a標(biāo)簽添加一個(gè)屬性“download”;
以下為例子
移到標(biāo)簽<a>標(biāo)簽上可以顯示文件路徑,根據(jù)路徑提示進(jìn)行文件路徑的補(bǔ)全
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<a href="321.png" download="test.png">點(diǎn)擊下載</a>
</body>
</html>
若需從網(wǎng)頁上傳的圖片中進(jìn)行下載 可能會(huì)用到以下方法
獲取主機(jī)域名:
location.hostname
獲取端口號(hào):
location.port
2.使用按鈕進(jìn)行監(jiān)聽
按鈕監(jiān)聽又可以分為兩種方法,
一是window.open()
var $eleBtn1 = $("#btn1");
var $eleBtn2 = $("#btn2");
//已知一個(gè)下載文件的后端接口:https://codeload.github.com/douban/douban-client/legacy.zip/master
//方法一:window.open()
$eleBtn1.click(function(){
window.open("https://codeload.github.com/douban/douban-client/legacy.zip/master");
});
二是表單提交
//方法二:通過form
$eleBtn2.click(function(){
var $eleForm = $("<form method='get'></form>");
$eleForm.attr("action","https://codeload.github.com/douban/douban-client/legacy.zip/master");
$(document.body).append($eleForm);
//提交表單,實(shí)現(xiàn)下載
$eleForm.submit();
});
總結(jié)
以上所述是小編給大家介紹的HTML頁面點(diǎn)擊下載文件的兩種實(shí)現(xiàn)方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!