добавить в массив значения из <input >

97
05 мая 2021, 19:00

HTML блок ввода:

<form id="file-form">
        <button type = "button" onclick="checkDir()">добавить</button>
        <input type="file" id="dir_input" webkitdirectory="" directory="" style="display:none" >
        </form>

Мне нужно. чтоб пользователь выбирал папку, и адрес этой папки добавлялся в массив(push). Потом выбрал еще одну папку, и адрес добавился в этот же массив. Я реализовал это так:

let arrDir = []
function checkDir(){  
$(function()
{
    let dir = document.getElementById('dir_input').click();
    $('#dir_input').on('change', function () 
    {
        var filePath = document.getElementById('dir_input').files[0].path ;
        arrDir.push(filePath);
        console.log(arrDir);
        return arrDir;
    });
});
}

Но почему-то с добавлением второй папки получается ерунда (результаты в консоли):

     ["C:\"]
 (2) ["C:\", "C:\Users"]
 (3) ["C:\", "C:\Users", "C:\Users"]

Как добиться результата такого плана? :

     ["C:\"]
 (2) ["C:\", "C:\Users"]
Answer 1

let arrDir = []; 
 
function checkDir() { 
  document.getElementById('dir_input').click(); 
} 
 
$('#dir_input').on('change', function () { 
  var filePath = document.getElementById('dir_input').files[0].path; 
  arrDir.push(filePath); 
  console.log(arrDir); 
  return arrDir; 
});

READ ALSO
Как в строке &ldquo;Организация: %name% %inn%&rdquo; выделить name и inn

Как в строке “Организация: %name% %inn%” выделить name и inn

Как в строке "Организация: %name% %inn%" выделить name и inn в разные переменные?

88
Загрузка видео и создание постера

Загрузка видео и создание постера

что будет лучше загружать видео создавать постер к нему в php через ffmpeg и сохранять его или лучше все это делать на js и отправлять его в php и там...

81