2015-07-09 3 views
0

Я хочу загрузить фотографию, не нажав кнопку отправки. Я использую ионный каркас и плагин cordova, а приведенный ниже пример получает фотографию из библиотеки фотографий iphone. Для краткости я включил только то, что необходимо для моего запроса.AngularJS загрузить фото без формы submit

мой взгляд выглядит следующим образом:

<form ng-submit="???"> 
     <img class="img-circle" ng-src="{{prof_pic}}" ngclick="showActionsheet()" ng-if="pic_is_not_null()"/> 
</form> 

контроллер:

$scope.getPictureFromGallery = function() { $cordovaCamera.getPicture(secondoptions).then(function(imageData) { 

    $scope.imageData = imageData; 
    //data model 
     $scope.data = {prof_pic_link: imageData}; 
     var image = angular.toJson($scope.data); 

    UserService.UpdateMyPhoto($localStorage.CurrentUser.id, $localStorage.CurrentUser.auth_token, image) 
    .success(function (data) { 

     $scope.prof_pic = "data:image/jpeg;base64," + imageData; 
     //to display the image in the view 

      }). 
     error(function(error,status) { 
      console.log(error); 
      console.log(status); 

     }) 


    }, function(err) { 
     // error 
    }); 

    }; 
+0

Просто удалите 'ng-submit', затем используйте' ng-click' для загрузки. –

+0

на самом деле я попробовал это не работает :( – teddybear123

+0

Когда вы хотите, чтобы изображение было загружено, если вы не хотите, чтобы пользователь нажимал submit? – callmekatootie

ответ

0

У вас уже есть ответ на ваш вопрос. Вы можете связать ng-click с функцией, которая загружает изображение на ваш сервер.

Но больше вопросов почему вам не нужна кнопка отправки. Подумайте об этом: пользователь хочет загрузить изображение, она выбирает изображение, которое должно быть загружено, но ему удается выбрать неправильный. Если я правильно прочитал ваш сценарий, это будет означать, что загружается неправильное изображение. Если, с другой стороны, будет кнопка отправки, пользователь может выбрать новое изображение без загрузки первого.

Так что, пока вы можете это сделать, и у вас уже есть ответ самостоятельно (ng-click="myUploadFunction(image)"), вы действительно этого хотите?

Смежные вопросы