@Moshiwa

Как временный файл средствами js поместить в input type=file?

Реализовал запись звука на сайте, после остановки записи файл сохраняется во временное хранилище. Как этот файл отправить в форму? Пробовал ajaxом отправлять сразу на сервер, но это не совсем то что мне нужно.
  • Вопрос задан
  • 260 просмотров
Решения вопроса 1
zkrvndm
@zkrvndm
Архитектор решений
Предположим в переменной blob лежит ваш звуковой файл, тогда вставить его в поле можно вот так:
// Создаем коллекцию:
var dt  = new DataTransfer();
dt.items.add(new File([blob], 'FileName.wav', {type: blob.type}));
var file_list = dt.files;

console.log('Коллекция файлов создана:');
console.dir(file_list);

// Вставим созданную коллекцию в реальное поле:
document.querySelector('input[type="file"]').files = file_list;

Если у вас формат звука не .wav, замените название файла на правильный.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
Пробовал ajaxом отправлять сразу на сервер, но это не совсем то что мне нужно

Это именно то что нужно. Так как вы хотите - не работает.
Ответ написан
Ваш ответ на вопрос

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

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