使用 Angular JS 选择文件 [英] File pick with Angular JS

查看:49
本文介绍了使用 Angular JS 选择文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用 AngularJS 获取一个文件:

HTML:

<button class="btn" ng-click="isCollapsed = !isCollapsed">切换折叠</button><input type="file" ng-model="filepick" ng-change="pickimg()" 多个/><output id="list"></output>

javascript:

angular.module('plunker', ['ui.bootstrap']);函数 TopMenuCtrl($scope) {$scope.pickimg = function() {警报('a');};}

如何在 AngularJS pickimg 函数上绑定输入文件 onchange 动作?我如何操作之后上传的文件?

解决方案

Angular 尚不支持 ng-change for input[type=file] 所以你有自己滚动实施.

首先,在 HTML 中,为 onchange 定义 Javascript,如下所示:

然后在你的 Angular 控制器代码中,定义函数:

$scope.file_changed = function(element) {$scope.$apply(function(scope) {var photofile = element.files[0];var reader = new FileReader();reader.onload = function(e) {//处理加载};reader.readAsDataURL(照片文件);});};

I would like to pick up a file with AngularJS:

HTML:

<div ng-controller="TopMenuCtrl">
    <button class="btn" ng-click="isCollapsed = !isCollapsed">Toggle collapse</button>
    <input type="file" ng-model="filepick" ng-change="pickimg()" multiple />
    <output id="list"></output> 
</div>

javascript:

angular.module('plunker', ['ui.bootstrap']);
function TopMenuCtrl($scope) {
    $scope.pickimg = function() {
        alert('a');
    };
}

How can I bind the input file onchange action on the AngularJS pickimg function? And how can i manipulate the files uploaded after?

解决方案

Angular doesn't yet support ng-change for input[type=file] so you have to roll onchange implementation yourself.

First, in the HTML, define Javascript for onchange as follows:

<input ng-model="photo"
       onchange="angular.element(this).scope().file_changed(this)"
       type="file" accept="image/*" />

And then in your Angular controller code, define the function:

$scope.file_changed = function(element) {

     $scope.$apply(function(scope) {
         var photofile = element.files[0];
         var reader = new FileReader();
         reader.onload = function(e) {
            // handle onload
         };
         reader.readAsDataURL(photofile);
     });
};

这篇关于使用 Angular JS 选择文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆