Тема: Як зберегти файл із Javascript
Мені треба зберегти файл на диск користувача з HTML сторінки. Як це зробити?
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → JavaScript, TypeScript, ECMAScript → Як зберегти файл із Javascript
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Мені треба зберегти файл на диск користувача з HTML сторінки. Як це зробити?
Не знаю чи підійде такий варіант, але що коли додати розширення (ну .doc наприклад) і просто розмістити це в тезі a
<a href='file.js.doc'>скачати файл з js</a>ну та, тут js непотрібно взагалі, ще є така штука http://www.w3schools.com/tags/att_a_download.asp, працює не у всіх браузерах але у багатьох. Ідея в тому що браузер по замовчуванню може відкривати якісь типи файлів а не завантажувати бо він з ними вміє працювати.
Вибачте, мав на увазі створити файл прям на сторінці і запропонувати користувачу його завантажити.
Така функція це робить:
    <script>
        function download(filename, text) {
            var element = document.createElement('a');
            element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
            element.setAttribute('download', filename);
            element.style.display = 'none';
            document.body.appendChild(element);
            element.click();
            document.body.removeChild(element);
        }
        download("rara.tex", "тут текст вашого документа");
    </script>Дякую за комент... Не знав до цього про існування такого атрибуту для тегу a. Судячи з усього якщо підтримка в здихаючому ослику не важлива (я про IE), то дійсно можна просто записати 
<a href='file.js'  download>скачати файл з js</a>але знову ж таки, при умові, що код написано html5.
Кому цікаво, то кину посилання на російськомовний ресурс з описом цього атрибуту
http://htmlbook.ru/html/a/download
Вибачте, мав на увазі створити файл прям на сторінці і запропонувати користувачу його завантажити.
Така функція це робить:
<script> function download(filename, text) { var element = document.createElement('a'); element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text)); element.setAttribute('download', filename); element.style.display = 'none'; document.body.appendChild(element); element.click(); document.body.removeChild(element); } download("rara.tex", "тут текст вашого документа"); </script>
Ясненько, я просто вас трохи не так зрозумів 
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися