lanvin07
@lanvin07
Нравится html5+js

Почему не сохраняется файл по getElementById?

Этот код
document.getElementsByTagName('a')[0].onclick = function() {                
  var csv = "A";
  var csvData = 'data:application/csv;charset=utf-8,' + encodeURIComponent(csv);
  this.href = csvData;
  this.target = '_blank';
  this.download = 'filename1.csv';
}
работает, файл сохраняется, а этот
document.getElementById('btn').onclick = function() {                
  var csv = "BUTTON";
  var csvData = 'data:application/csv;charset=utf-8,' + encodeURIComponent(csv);
  this.href = csvData;
  this.target = '_blank';
  this.download = 'filename2.csv';
}
нет.
Почему?

FileSave
  • Вопрос задан
  • 254 просмотра
Решения вопроса 2
bootd
@bootd Куратор тега HTML
Гугли и ты откроешь врата знаний!
На код гляди внимательней. Скрипт просто берёт и ссылке устанавливает href со значением csvData. После чего, браузер, не понимая формата, скачивает его. А с какого рожна кнопка имеет атрибут href?
Ответ написан
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Можно подумать он по getElementsByTagName сохраняется :))
Замените тег A на SPAN и продолжайте удивляться )
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы