<input type="file" ng-model="myobj.file" ng-file-select="onFileSelect_filter($files)" id="fileButton" >
<button type="button" ng-click="start_Filter();" >Upload</button>
我的onFileSelect_filter()函数就像这样,
$scope.onFileSelect_filter = function($files){
....
};
我想在至少点击Internet Explorer中的上传按钮后清除文件名。
此输入框不在表单内 提前谢谢...... !!!
答案 0 :(得分:1)
不幸的是,在这种情况下,将绑定的$scope
变量等同为空字符串或null将不起作用。
虽然你可以通过下面提到的方式之一来实现它。
方法1 :
你必须逐字地替换DOM上的html(在你的情况下上传)并将其恢复到上传之前的状态。像这样......
$scope.start_Filter = function(){
// This is in the upload function post all your logic
$("#fileButton").replaceWith("<input type='file' ng-model='myobj.file' ng-file-select='onFileSelect_filter($files)' id='fileButton' >").html();
};
注意:必须对replaceWith
函数中的所有HTML属性值使用单引号而不是双引号
方法2 :
或者,您可以使用JQuery轻松清除文件名。像这样......
$scope.start_Filter = function(){
// This is in the upload function post all your logic
$("#fileButton").val('');
};
其中一个应该有用。如果你遇到任何麻烦,请试试看,告诉我。
答案 1 :(得分:1)
最简单的方法是:angular.element("input[type='file']").val(null);
答案 2 :(得分:0)
在您的控制器中,文件上传完成后更改myobj.file value.
$scope.myobj.file = ''
答案 3 :(得分:0)
尝试清除 $ scope.myobj var
:
$scope.onFileSelect_filter = function($files){
$scope.myobj.file = undefined;
};