2016-01-24 3 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/