2016-01-24 104 views
2

我使用的是JavaScript的用戶下載它看起來像這樣生成文件:下載文件與文件名用戶下載設定

<a href="data:application/octet-stream;charset=utf-8;base64,Zm9vIGJhcg==">text file</a> 

我需要的是讓文件名用戶當他保存文件時設置,以便我可以在我的網站上顯示它。

我該如何做到這一點?

+2

你不能得到名稱,用戶設定。這並不安全。 –

+0

**否**,用戶在瀏覽器控件中輸入的內容超出了javascript的控制範圍。 – gurvinder372

回答

0

簡單的回答是: 你不能。

複雜的答案是:

您可以創建一個腳本來預先設置用戶的文件的名稱。 只需創建一些彈出窗口或提示您要求命名該文件的位置。 之後,您可以通過JavaScript編輯下載屬性,用戶將使用該名稱下載文件。 (如果他不下載對話框更改) 事情是這樣的:

var fileName = prompt("Please name your file", "OriginalFileName"), 
 
fileLink = document.getElementById('file'); 
 
if(fileName!= null){ 
 
    fileLink.download = fileName; 
 
    fileLink.innerHTML = fileName; 
 
}
<a download='OriginalFileName' id="file" href="data:application/octet-stream;charset=utf-8;base64,Zm9vIGJhcg==">text file</a>

活生生的例子在https://jsfiddle.net/6o2fxcvd/1/