2016-05-06 10 views
4

Ich habe eine taste. Es sollte als Datei-Upload bei Klick auf die Schaltfläche fungieren.Wie button als eingabetyp datei

<div id="Rectangle-541"> 
    <md-icon md-svg-src="./assets/images/csv.svg" class="ic_cloud_download_black_24px"></md-icon> 
    <md-button class="Upload-CSV-from-mem">Upload .CSV From Memory</md-button> 

</div> 

Antwort

1

Schauen Sie sich diese

var jimApp = angular.module("mainApp", []); 
 

 
jimApp.controller('mainCtrl', function($scope){ 
 
    
 
    $scope.fileChanged = function(){ 
 
\t \t angular.element('#fileUplaod').trigger('click'); 
 
    }; 
 
    
 
    $scope.profilePictureSelected = function(data){ 
 
    console.log(data.files[0]); 
 
    }; 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="mainApp" ng-controller="mainCtrl"> 
 
    <div id="Rectangle-541"> 
 
     <md-icon md-svg-src="./assets/images/csv.svg" class="ic_cloud_download_black_24px"></md-icon> 
 
     <md-button class="Upload-CSV-from-mem" ng-click="fileChanged()">Upload .CSV From Memory</md-button> 
 
</div> 
 

 
<input type="file" style="display:none" id="fileUplaod" ng-model="myFile" name='file' onchange="angular.element(this).scope().profilePictureSelected(this)" /> 
 
</div>

+0

habe ich versucht, diese aber immer Fehler Elemente über die Selektoren oben schauen nicht durch jqLite unterstützt! Siehe: http://docs.angularjs.org/api/angular.element http://errors.angularjs.org/1.5.5/jqLite/nosel –

+0

@TechnoGeek Sie brauchen Jquery dafür – byteC0de

+0

Yess ich tat es funktioniert Gut .. Dank Bro –

Verwandte Themen