Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Retrieving file names out of a multi-file upload control with javascript

Tags:

The HTML is:

<input type="file" multiple="multiple" name="upload" id="id_upload" />

If I load up three files, document.getElementById("id_upload").value only returns a single file name and not an array of three names or comma separated string of three names. Same story with jQuery val(). Is there a way to get the whole list?

like image 706
Jason Christa Avatar asked Sep 06 '10 20:09

Jason Christa


1 Answers

Use the .files property of that element:

var elem = document.getElementById("id_upload");
var names = [];
for (var i = 0; i < elem.files.length; ++ i) {
   names.push(elem.files[i].name);
}

Reference:

  • Input.multiple — MDC
  • File — MDC
like image 89
kennytm Avatar answered Oct 20 '22 00:10

kennytm