Снимок экрана выбора файлов из разных файловых входов
Как видите, у меня есть несколько файловых входов. Это может показаться неловким, но у меня есть причина.
Я использую этот способ для доступа к файлу обычным способом, который
var file = document.querySelector('input[type=file]').files[0];
но он получает файл только в том случае, если я загружаю его в первое поле ввода файла, есть ли способ получить доступ к другим элементам ввода файла.
Большое спасибо: D



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы должны использовать метод querySelectorAll, потому что он возвращает список узлов, а затем вы можете перебрать список и получить все, что хотите. querySelector метод возвращает только первое появление селектора
Используйте один из других методов выбора DOM, таких как querySelectorAll (), getElementsByClassName, getElementsByTagName и т. д., Который может выбирать более одного элемента за раз.
querySelectorAll, например, вернет NodeList, объект, подобный массиву, содержащий все выбранные элементы. Затем либо перебирайте этот список, либо используйте прямой доступ, чтобы добраться до элемента.
var inputs = document.querySelectorAll('input[type=file]');
inputs.forEach(input=>{
//deal with each input
let file = input.files[0];
//use file
});
//or if using older browser that doesn't have NodeList#forEach
for(let i=0; i<inputs.length; i++){
let file = inputs[i].files[0];
//use file
}
Возможный дубликат Получение имен файлов из элемента управления загрузкой нескольких файлов с помощью javascript