Angularjs blueimp fileUpload手动触发提交

时间:2014-02-25 11:03:32

标签: javascript angularjs

如何在角度控制器的操作中手动触发文件上传?

这是我的控制器

  angular.module('angular-app', ['blueimp.fileupload'])
     .controller('NewsController', function($scope, $http) {

    ......

    $scope.SaveNews = function() {           
        var url = baseUrl + '/Post',
            data = $scope.News;
        $http({
            url: url,
            method: 'POST',
            data: data
        }).success(function(data) {                   
                    $scope.News = data.Data;


                    --->   something.submit(); // <--- THIS IS THE FILES SUBMIT


                }                
            }).error(function(data) {
                ShowAlert(data.Success);
            });
    };

我无法触发任何想法?

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。 我的问题是获取文件列表。我这样解决了

//The list of files
$scope.$on('fileuploadchange', function (event, files) {
            $scope.Files = files.files;
        });
//The action triggered manually
$scope.SubmitAction = function(){
   $('#fileUploadID').fileupload('send', {files: $scope.Files});
}

注意一件事,每次在变量“files”中称为“fileuploadchange”时,你只能找到最新添加的项目!

答案 1 :(得分:0)

检查文件: https://github.com/blueimp/jQuery-File-Upload/wiki/API#wiki-programmatic-file-upload

$('#your-selector').fileupload('send', {files: your.data});