我正在开发一个AngularJS项目,该项目涉及通过表单将文件上传到S3。一切正常(我可以上传文件,输入上的文件名更改为"没有选择文件"无论文件的名称是什么)除了成功上传后我想重置上传文件字段到它的原始值(显示:"没有选择文件"。即使在将$ scope.file重置为null后我也无法做到这一点。我在这里输入了上传文件作为指令
angular.module('myApp').directive('file', function() {
return {
restrict: 'AE',
scope: false,
link: function(scope, el, attrs){
scope.$watch('file', function(newValue, oldValue){
console.log(newValue);
console.log(scope.file);
});
el.on('change', function(event){
var files = event.target.files;
var file = files[0];
scope.file = file;
});
}
};
});
我有一个观察程序设置,所以当我通过控制器将它设置为null时,我可以检查值是否正在改变,所以我不确定我能做些什么来重置输入字段回到默认值。我在这里做错了吗?
答案 0 :(得分:0)
//在指令
中的回调函数中上传后$(el).val('')
您可以直接清除文件上传控件的值