提交后重置上传文件输入字段



我正在做一个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 时,我可以检查值是否正在更改,因此我不确定我可以做些什么将输入字段重置回默认值。我在这里做错了什么吗?

//在指令中的回调函数中上传后

$(el).val('')

您可以直接清除文件上传控件的值

相关内容

  • 没有找到相关文章

最新更新