У меня проблема с .onchange
только в IE Edge.
Для загрузки файлов у меня есть этот HTML:
<div id="drop_file_zone" ondrop="upload_file(event)" ondragover="return false">
<div id="drag_upload_file">
<p>DROP FILE(S) HERE</p>
<p>or</p>
<p><input class="browse btn" type="button" value="Browse" onclick="file_explorer();"></p>
<input type="file" id="selectfile" name="upload" multiple>
</div>
</div>
JavaScript:
var fileobj;
function file_explorer() {
document.getElementById('selectfile').click();
document.getElementById('selectfile').onchange = function() {
for (var i=0; i< this.files.length;i++){ // multiple files uploading
fileobj = document.getElementById('selectfile').files[i];
ajax_file_upload(fileobj);
}
};
}
Что происходит: только в IE Edge, при первом открытии проводника и поиске файла, файл не "выбран". Когда я снова открываю проводник и выбираю другой файл, файл выбирается.
DEMO: https://jsfiddle.net/ayw104L7/1/
Вы видите, что IE Edge не выдает предупреждение "файл выбран" в первый раз