最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用JS代碼實現(xiàn)點擊按鈕下載文件

 更新時間:2016年11月12日 09:00:14   作者:*茉莉花開*  
有時候我們在網(wǎng)頁上需要增加一個下載按鈕,讓用戶能夠點擊后下載頁面上的資料,那么怎樣才能實現(xiàn)功能呢?今天小編給大家分享兩種方法實現(xiàn)js實現(xiàn)點擊按鈕下載文件,需要的朋友參考下吧

正文

有時候我們在網(wǎng)頁上需要增加一個下載按鈕,讓用戶能夠點擊后下載頁面上的資料,那么怎樣才能實現(xiàn)功能呢?這里有兩種方法:

現(xiàn)在需要在頁面上添加一個下載按鈕,點擊按鈕下載文件。

題外話,這個下載圖標(biāo)是引用的 font-awesome 上面的。使用時,首先將 font-awesome 整個文件夾下載下來,利用bower或者是自己去官網(wǎng)上面下載都行。

將整個文件夾放在項目文件中之后,在頁面上面引入css文件

<link href="libs/font-awesome-4.7.0/css/font-awesome.min.css" type="text/css" rel="stylesheet">

在頁面上可以開始使用所需要的圖標(biāo)了

<i class="fa fa-download" aria-hidden="true" title="下載"></i>

1.下載項目中的文件

如果要下載的是一個excel文件模板,可以先將該文件放在項目文件夾下面,然后在頁面下載按鈕上加上onclick事件:

<i class="fa fa-download" aria-hidden="true" title="下載" onclick="window.open('file/user.xlsx')"></i>

這樣在點擊圖標(biāo)之后,文件就會自動下載了。

2.發(fā)送請求地址下載文件

JQuery的ajax函數(shù)的返回類型只有xml、text、json、html等類型,沒有“流”類型,所以我們要實現(xiàn)ajax下載,不能夠使用相應(yīng)的ajax函數(shù)進(jìn)行文件下載。但可以用js生成一個form,用這個form提交參數(shù),并返回“流”類型的數(shù)據(jù)。在實現(xiàn)過程中,頁面也沒有進(jìn)行刷新。

1)get請求

$('.download').click(function () {
var tt = new Date().getTime();
var url = 'http://192.168.1.231:8080/91survey/ws/excel/download';
/**
* 使用form表單來發(fā)送請求
* 1.method屬性用來設(shè)置請求的類型——post還是get
* 2.action屬性用來設(shè)置請求路徑。
* 
*/
var form=$("<form>");//定義一個form表單
form.attr("style","display:none");
form.attr("target","");
form.attr("method","get"); //請求類型
form.attr("action",url); //請求地址
$("body").append(form);//將表單放置在web中
  /**
* input標(biāo)簽主要用來傳遞請求所需的參數(shù):
*
* 1.name屬性是傳遞請求所需的參數(shù)名.
* 2.value屬性是傳遞請求所需的參數(shù)值.
*
* 3.當(dāng)為get類型時,請求所需的參數(shù)用input標(biāo)簽來傳遞,直接寫在URL后面是無效的。
* 4.當(dāng)為post類型時,queryString參數(shù)直接寫在URL后面,formData參數(shù)則用input標(biāo)簽傳遞
* 有多少數(shù)據(jù)則使用多少input標(biāo)簽
*
   */
var input1=$("<input>");
input1.attr("type","hidden");
input1.attr("name","tt");
input1.attr("value",tt);
form.append(input1);
var input2=$("<input>");
input2.attr("type","hidden");
input2.attr("name","companyId");
input2.attr("value",companyId);
form.append(input2);
form.submit();//表單提交
})

2)post請求

$('.download').click(function(){
var tt =newDate().getTime();
var url = restUrl +'/excel/download?userId='+ userId;
var form=$("<form>");//定義一個form表單
form.attr("style","display:none");
form.attr("target","");
form.attr("method","post");//請求類型
form.attr("action",url);//請求地址
$("body").append(form);//將表單放置在web中
var input1=$("<input>");
input1.attr("type","hidden");
input1.attr("name","tt");
input1.attr("value",tt);
form.append(input1);
var input2=$("<input>");
input2.attr("type","hidden");
input2.attr("name","companyId");
input2.attr("value",companyId);
form.append(input2);
form.submit();//表單提交
});

完成后,在頁面上面點擊下載圖標(biāo),文件就會自動下載了。

相關(guān)文章

  • 基于JS實現(xiàn)移動端左滑刪除功能

    基于JS實現(xiàn)移動端左滑刪除功能

    最近做個項目,需要實現(xiàn)移動端左滑刪除功能,當(dāng)時js代碼將網(wǎng)上找的進(jìn)行刪減優(yōu)化,下面通過本文給大家分享基于JS實現(xiàn)移動端左滑刪除功能,感興趣的朋友一起看看
    2017-07-07
  • layer.confirm取消按鈕綁定事件的方法

    layer.confirm取消按鈕綁定事件的方法

    今天小編就為大家分享一篇layer.confirm取消按鈕綁定事件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • JavaScript設(shè)計模式中的觀察者模式

    JavaScript設(shè)計模式中的觀察者模式

    這篇文章主要介紹了JavaScript設(shè)計模式中的觀察者模式,觀察者設(shè)計模式適用于監(jiān)聽一對多的操作,例如監(jiān)聽對象屬性的修改等等,觀察者模式能夠降低代碼耦合度,提升可擴(kuò)展性
    2022-06-06
  • JavaScript中運算符與數(shù)組擴(kuò)展詳細(xì)講解

    JavaScript中運算符與數(shù)組擴(kuò)展詳細(xì)講解

    這篇文章主要介紹了JavaScript中運算符與數(shù)組擴(kuò)展方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-11-11
  • 微信小程序?qū)崿F(xiàn)下滑到底部自動翻頁功能

    微信小程序?qū)崿F(xiàn)下滑到底部自動翻頁功能

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)下滑到底部自動翻頁功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 一個js封裝的不錯的選項卡效果代碼

    一個js封裝的不錯的選項卡效果代碼

    在論壇里經(jīng)??吹饺藛栠x項卡或者類似選項卡的切換效果 這里封裝了個js,希望對大家有用 所有代碼都在下面了 如果有錯誤或者建議,可以回貼告訴我,謝謝
    2008-02-02
  • js圖數(shù)據(jù)結(jié)構(gòu)處理 迪杰斯特拉算法代碼實例

    js圖數(shù)據(jù)結(jié)構(gòu)處理 迪杰斯特拉算法代碼實例

    這篇文章主要介紹了js圖數(shù)據(jù)結(jié)構(gòu)處理 迪杰斯特拉算法代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • JavaScript處理解析JSON數(shù)據(jù)過程詳解

    JavaScript處理解析JSON數(shù)據(jù)過程詳解

    JSON 是 JavaScript 原生格式,也就是說在 JavaScript 中處理 JSON 數(shù)據(jù)不需要任何特殊的 API 或工具包。接下來,本文給大家介紹JavaScript處理解析JSON數(shù)據(jù)過程詳解,感興趣的朋友快來了解了解吧
    2015-09-09
  • js實現(xiàn)特別簡單的鐘表效果

    js實現(xiàn)特別簡單的鐘表效果

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)特別簡單的鐘表效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • JS原形與原型鏈深入詳解

    JS原形與原型鏈深入詳解

    這篇文章主要介紹了JS原形與原型鏈,結(jié)合實例形式深入分析了JS原型鏈、繼承、組合繼承等相關(guān)原理、操作技巧及注意事項,需要的朋友可以參考下
    2020-05-05

最新評論

安徽省| 深水埗区| 九龙坡区| 慈利县| 含山县| 蓝田县| 柳林县| 萝北县| 遵义市| 米林县| 尼勒克县| 大名县| 微山县| 陆良县| 拉孜县| 田阳县| 富宁县| 台中市| 临湘市| 凌云县| 资中县| 沂水县| 灯塔市| 志丹县| 湘乡市| 十堰市| 山东省| 徐汇区| 定兴县| 维西| 炉霍县| 竹山县| 东丰县| 宁晋县| 棋牌| 镇坪县| 长泰县| 紫阳县| 六安市| 扎囊县| 兴国县|