Я хочу реализовать сценарий с использованием угловых символов, в которых пользователь выбирает каталог, и после выбора нужно выполнить некоторую обработку каждого файла в этом каталоге.onchange событие не запускается, когда пользователь выбирает пустой каталог
Здесь Вы можете найти код для того же HTML файл:
<div ng-app="myApp" ng-controller="myCtrl">
<input id="folder" type="file" onchange="angular.element(this).scope().checkFiles(this.files)" webkitdirectory="" directory="" multiple="" />
</div>
кода Javascript
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.checkFiles = function(files) {
console.log(files);
//add below line of code to trigger onchange event if user select same directory
angular.element(document.querySelector('#folder'))[0].value = null;
};
});
Plunker ссылка https://plnkr.co/edit/lDhoShIVgCXLd33mPtbh?p=preview
Письменное код работы, когда выбран каталог имеет какой-либо файл в Это. Но когда я выбираю пустой каталог, он вызывает событие onchange.
Я пробовал много, но не получил оснований для такого поведения.
Одна вещь, которую я заметил, что когда я удалить ниже строки кода
//add below line of code to trigger onchange event if user select same directory
angular.element(document.querySelector('#folder'))[0].value = null;
и выберите папку с некоторыми файлами, а затем выберите пустую directoy OnChange событие становится triggred. Но событие onchange не запускается, если я сначала выбираю пустой каталог при первой попытке.
Необходимо знать, почему событие onchange не запускается для пустого каталога.
Примечание: Пожалуйста, попробуйте этот код на хромовую браузер не поддерживается для других браузеров
Угловой или нет, вы не можете выбрать каталог. Но вы можете выбрать один или несколько файлов, а затем событие изменения будет запущено вводом файла. –
Возможный дубликат [Directory Chooser в HTML-странице] (http://stackoverflow.com/questions/2809688/directory-chooser-in-html-page) –
@IgweKalu Я хочу выбрать каталог, и я могу это сделать check plunker link https://plnkr.co/edit/lDhoShIVgCXLd33mPtbh?p=preview просто хочу знать, почему событие onchange запускается при выборе пустого каталога. –