Angularjs 在'上施加角度元素力;改变';在同一文件上调用指定函数

Angularjs 在'上施加角度元素力;改变';在同一文件上调用指定函数,angularjs,events,jquery-selectors,document,Angularjs,Events,Jquery Selectors,Document,当我第一次选择say hello.png时,它会加载它并调用handleFileSelect()函数。但是,如果我再次选择同一个文件,在我选择另一个文件名之前不会调用该函数。如何强制它调用函数?我想修改是在“变更”上,但不确定会是什么事件 var handleFileSelect = function(evt) { debugger; var file = evt.currentTarget.files[0]; var reader = new FileReader(); rea

当我第一次选择say hello.png时,它会加载它并调用handleFileSelect()函数。但是,如果我再次选择同一个文件,在我选择另一个文件名之前不会调用该函数。如何强制它调用函数?我想修改是在“变更”上,但不确定会是什么事件

var handleFileSelect = function(evt) {
  debugger;
  var file = evt.currentTarget.files[0];
  var reader = new FileReader();
  reader.onload = function (evt) {
    $scope.$apply(function($scope){
      $scope.myImage = evt.target.result;
    });
  };
  reader.readAsDataURL(file);
};

angular.element(document.querySelector('#fileInput')).on('change', handleFileSelect);

我能想到的最好的方法是用按钮替换文件输入,并在按下按钮时动态创建输入

功能手柄文件选择(evt){
警报('Filename:'+evt.target.files[0].name);
}
var button=document.getElementById('select-file');
addEventListener('click',function(){
var input=document.createElement('input');
input.type='file';
input.addEventListener('change',handleFileSelect);
输入。单击();
});

选择文件
到目前为止,这里的代码运行良好。让我在我真正的应用程序中使用这些代码,我会和你联系的。谢谢!是的,是的!令人惊叹的!非常感谢D