Angular js输入类型文件 - 清除以前选择的文件

Kee*_*ser 8 input-type-file twitter-bootstrap angularjs angularjs-directive angular-file-upload

我正在使用input type="file"角度js上传控件.每次我点击浏览,我都不想看到以前选择的文件.默认情况下,这似乎保留.可以通过编写指令来实现吗?每次点击浏览都能触发吗?

我正在使用bootstrap实现来更新默认浏览按钮.

 <span class="useBootstrap btn btn-default btn-file">
                Browse <input type="file"  />
            </span>
Run Code Online (Sandbox Code Playgroud)

Kee*_*ser 35

这是最简单的方法,不使用任何指令或复杂的代码.

Browse <input type="file" ng-click="clear()" 
Run Code Online (Sandbox Code Playgroud)

并在你的控制器

 $scope.clear = function () {
    angular.element("input[type='file']").val(null);
};
Run Code Online (Sandbox Code Playgroud)

  • 是的,确实这是最简单的方法......但这不是正确的方法.我已经经历了以指令和所有形式再次重写整个代码的麻烦,这就是为什么我不能推荐这种方法. (3认同)
  • 这抱怨它不能将jqLit​​e用于选择器。但这工作得很好:var myEl = angular.element(document.querySelector('#some-id')); (2认同)