@Moshiwa

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

Реализовал запись звука на сайте, после остановки записи файл сохраняется во временное хранилище. Как этот файл отправить в форму? Пробовал ajaxом отправлять сразу на сервер, но это не совсем то что мне нужно.
  • Вопрос задан
  • 45 просмотров
Пригласить эксперта
Ответы на вопрос 2
yarkov
@yarkov Куратор тега JavaScript
Проект "Жизнь после смерти" - lifeafterdeath.ru
Пробовал ajaxом отправлять сразу на сервер, но это не совсем то что мне нужно

Это именно то что нужно. Так как вы хотите - не работает.
Ответ написан
@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, замените название файла на правильный.
Ответ написан
Ваш ответ на вопрос

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

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