- AngularJS 教程
- AngularJS - 首页
- AngularJS - 概览
- AngularJS - 环境设置
- AngularJS - MVC 架构
- AngularJS - 第一个应用程序
- AngularJS - 指令
- AngularJS - 表达式
- AngularJS - 控制器
- AngularJS - 过滤器
- AngularJS - 表格
- AngularJS - HTML DOM
- AngularJS - 模块
- AngularJS - 表单
- AngularJS - 包含
- AngularJS - AJAX
- AngularJS - 视图
- AngularJS - 作用域
- AngularJS - 服务
- AngularJS - 依赖注入
- AngularJS - 自定义指令
- AngularJS - 国际化
- AngularJS 应用程序
- AngularJS - 待办事项应用程序
- AngularJS - 记事本应用程序
- AngularJS - Bootstrap 应用程序
- AngularJS - 登录应用程序
- AngularJS - 上传文件
- AngularJS - 行内应用程序
- AngularJS - 导航菜单
- AngularJS - 切换菜单
- AngularJS - 订单表
- AngularJS - 搜索选项卡
- AngularJS - 拖动应用程序
- AngularJS - 购物车应用程序
- AngularJS - 翻译应用程序
- AngularJS - 图表应用程序
- AngularJS - 地图应用程序
- AngularJS - 分享应用程序
- AngularJS - 天气应用程序
- AngularJS - 计时器应用程序
- AngularJS - Leaflet 应用程序
- AngularJS - Lastfm 应用程序
- AngularJS 实用资源
- AngularJS - 问题和答案
- AngularJS - 快速指南
- AngularJS - 实用资源
- AngularJS - 讨论
AngularJS - 上传文件
我们提供一个上传文件的示例。为了开发此应用程序,我们使用了 HTML、CSS 和 AngularJS。以下示例展示了如何使用 AngularJS 上传文件。
<html> <head> <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"> </script> </head> <body ng-app = "myApp"> <div ng-controller = "myCtrl"> <input type = "file" file-model = "myFile"/> <button ng-click = "uploadFile()">upload me</button> </div> <script> var myApp = angular.module('myApp', []); myApp.directive('fileModel', ['$parse', function ($parse) { return { restrict: 'A', link: function(scope, element, attrs) { var model = $parse(attrs.fileModel); var modelSetter = model.assign; element.bind('change', function() { scope.$apply(function() { modelSetter(scope, element[0].files[0]); }); }); } }; }]); myApp.service('fileUpload', ['$https:', function ($https:) { this.uploadFileToUrl = function(file, uploadUrl) { var fd = new FormData(); fd.append('file', file); $https:.post(uploadUrl, fd, { transformRequest: angular.identity, headers: {'Content-Type': undefined} }) .success(function() { }) .error(function() { }); } }]); myApp.controller('myCtrl', ['$scope', 'fileUpload', function($scope, fileUpload) { $scope.uploadFile = function() { var file = $scope.myFile; console.log('file is ' ); console.dir(file); var uploadUrl = "/fileUpload"; fileUpload.uploadFileToUrl(file, uploadUrl); }; }]); </script> </body> </html>
结果
在 Web 浏览器中打开上面保存的代码文件。查看结果。
广告