Angular js 上传文件,上传成功后清空文件选择框、移除已上传的文件
时间: 2024-06-11 13:06:34 浏览: 216
在AngularJS中,可以使用ng-file-upload插件来实现文件上传功能。在上传成功后,可以使用ng-model来清空文件选择框,并使用ng-repeat来移除已上传的文件。
以下是一个简单的示例:
HTML代码:
```html
<input type="file" ngf-select ng-model="file" />
<button ng-click="upload()">上传</button>
<div ng-repeat="uploadedFile in uploadedFiles">
{{uploadedFile.name}} <button ng-click="remove(uploadedFile)">移除</button>
</div>
```
控制器代码:
```javascript
app.controller('MyCtrl', function($scope, $http, Upload) {
$scope.upload = function() {
Upload.upload({
url: '/upload',
data: {file: $scope.file}
}).then(function(response) {
// 上传成功
$scope.file = null; // 清空文件选择框
$scope.uploadedFiles.push(response.data); // 添加已上传的文件
});
};
$scope.uploadedFiles = []; // 已上传的文件列表
$scope.remove = function(uploadedFile) {
// 从列表中移除已上传的文件
var index = $scope.uploadedFiles.indexOf(uploadedFile);
if (index !== -1) {
$scope.uploadedFiles.splice(index, 1);
}
};
});
```
在上传成功后,清空文件选择框的方法是将ng-model绑定的变量设置为null。使用ng-repeat来移除已上传的文件需要从列表中找到该文件并使用splice方法将其移除。
阅读全文