Angular.js文件上传器输入onChange事件问题

Angular.js File Uploader Input onChange Event Issue

本文关键字:输入 onChange 事件 问题 js 文件 Angular      更新时间:2023-09-26

我正在做一个项目,在那里我使用了Angular文件上传器:

template: '<input type="file" id="files" name="files[]" multiple /><output id="list"></output>',

…并为这个文件上传器设置了一个'change'事件监听器:

document.getElementById('files').addEventListener('change', handleFileSelect, false);

如果我的用户选择了一个文件列表,我的回调被触发,文件列表可以被检索。这不是问题所在。

然后,我用文件列表填充一个对话框。用户可以选择在完成上传之前删除一个或多个文件,也可以选择全部取消上传。

如果用户删除所有文件或取消上传,返回到上传对话框,并选择相同的文件列表,则不会触发'change'事件侦听器,因为输入的值实际上从未更改。

我是否可以在文件上传器(输入框)的"打开"按钮上设置"点击"事件?

我的问题解决了。

在我的'change'事件监听器(handleFileSelect)的回调中,我将文件上传器的值重置为"。现在,每次一个文件被选中,不管它是不是同一个列表,'change'事件都会被触发。

document.getElementById('files').value = "";