Задать вопрос
@pw0ned

Запись данных поля в документ (js)?

Всем привета, есть поле в которое вводишь значение и при нажатии кнопки идет обработка с помощью JS.
Каким образом можно сделать запись введенного значения в текстовый документ ? Я в JS очень слабенький, по этому прошу помощи. Спасибо заранее всем большое !
  • Вопрос задан
  • 791 просмотр
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 4
Krasnodar_etc
@Krasnodar_etc
fundraiseup
Если очень слабенький - врятли сделаешь.

Нереально записать что-нибудь в текстовый файл пользователя. У браузера просто нет прав лезть в каталоги юзера.

Можно записывать в файл того же сервера, на котором лежит сайт. Чтобы сделать средствами JS - нужна Node.js.
1) Поднимаешь сервер на Node
2) Переносишь туда свой код js/html/css/...
3) По клику на кнопку отправляешь запрос к серверу (ajax)
4) На сервере создаёшь файл, открываешь, записываешь
Ответ написан
Комментировать
pterodaktil
@pterodaktil
js developer
Привета. По факту никак, политика браузера. Можно как вариант использовать что-то такое:
var link = document.createElement('a');
link.href = 'data:text/plain;charset=UTF-8,' + encodeURIComponent(yourTextGoesHere);
link.download = 'some file name.txt';
link.click();

Не совсем то, что мы хотим, но выкрутиться можно @источник
Ответ написан
Комментировать
KorniloFF
@KorniloFF Куратор тега JavaScript
Работаю по font-end / JS
Средствами JS - никак. Можно послать запрос серверу с содержимым поля (ajax || location.href), а на сервере уже записать в текстовик.
Ответ написан
Комментировать
@Interface
Я вижу решение проблемы в 2 плоскостях:
- через браузер
- с дополнительным ПО

Через браузер нельзя писать в произвольный файл, но можно хранить данные на компьютере (cookies, localStorage, indexedDB etc.), а также сгенерить файл непосредственно в браузере и открыть диалог сохранения. Второе делается через data uri, подробнее тут https://stackoverflow.com/questions/3665115/create...

С дополнительным ПО можно:
- через Node.js как говорилось выше;
- через Electron / NW.js (Node-Webkit);
- через любой другой js-runtime с доступом к файловой системе (более сложный путь), т.е. можете взять v8 или spider-monkey и добавить его к своему проекту с доступом к ФС
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы