Как получить файлы из нескольких входных файлов управления? - PullRequest
0 голосов
/ 11 мая 2018

У меня есть несколько элементов управления вводом файлов, которые динамически генерируются с помощью кода.Я попытался поставить пример скрипта, который выглядит так:

<input type="file id="file1" />
<input type="file" id="file2" />

JS:

    $(document).ready(function(){
        $('input:file').on('change', function ()
        {
            for (var i = 0; i < this.files.length; i++)
            {
                alert(this.files[i].name);
            }
        });
    });

Я думаю, что мой код в получении файлов неверен.

1 Ответ

0 голосов
/ 11 мая 2018

Я думаю, вы можете сделать что-то вроде этого:

$('input[type="file"]').on('change', function() {
    $('input[type="file"]').each(function() {
        alert($(this).val());
    });
});

Если я правильно понял ваш вопрос, это должно сделать то, что вам нужно.Проблема с вашим кодом заключалась в том, что вы дали селектору несколько элементов для прослушивания изменений, однако каждый элемент соответствовал селектору, в этом случае два элемента, заданные в примере html-разметки, запускают on для запуска с <input /> это изменило значение.

Этот код должен прослушивать изменения в любом входном файле, затем при изменении он снова будет использовать тот же селектор, теперь сканирует оба входа и выводит значение.В этом коде, однако, он выведет путь к файлу, поэтому вам нужно будет выполнить некоторую замену регулярных выражений или что-то еще, чтобы получить только имя файла.

...