2016-08-09 9 views
3

Wie schließe ich ui.bootstrap ein. Ich benutze ui.bootstrap, um das Bootstrap-Modal (offen) auf zu öffnen. Danach möchte ich alle modalen Daten an den Server senden, dafür benutze ich $http in meinem Winkelregler. Aber es gibt einen Fehler. Unten ist mein eckiger JS-Code.einschließlich ui Bootstrap in Winkel js

var app = angular.module("modalFormApp", ['ui.bootstrap']); 

app.controller("modalAccountFormController", ['$scope', '$modal', '$log', '$http' 

    function($scope, $modal, $log, $http) { 

     $scope.showForm = function() { 
      $scope.message = "Show Form Button Clicked"; 
      console.log($scope.message); 

      var modalInstance = $modal.open({ 
       templateUrl: 'modal-form.html', 
       controller: ModalInstanceCtrl, 
       scope: $scope, 
       resolve: { 
        userForm: function() { 
         return $scope.userForm; 
        } 
       } 
      }); 

      modalInstance.result.then(function(selectedItem) { 
       $scope.selected = selectedItem; 
      }, function() { 
       $log.info('Modal dismissed at: ' + new Date()); 
      }); 
     }; 
    } 
]); 


app.controller('ModalInstanceCtrl', ['$scope', '$http', '$modalInstance', userForm, function($scope, $http, $modalInstance, userForm) { 

    //var ModalInstanceCtrl = function ($scope, $modalInstance,$http,      userForm) { 
    $scope.form = {} 
    $scope.url = 'submit.php'; 
    $scope.submitForm = function() { 
     if ($scope.form.userForm.$valid) { 
      $http.post($scope.url, { 
       "name": $scope.name, 
       "email": 

        $scope.email, 
       "message": $scope.message 
      }). 
      success(function(data, status) { 
       console.log(data); 
       $scope.status = status; 
       $scope.data = data; 
       $scope.result = data; 
      }) 

     } else { 
      console.log('userform is not in scope'); 
     } 
    }; 

    $scope.cancel = function() { 
     $modalInstance.dismiss('cancel'); 
    }; 
}]) 
+0

Welche Fehler gezeigt hinzufügen? –

+0

@SatheeshSanthosh Ich habe einen unteren Fehler ..... [$ injector: modulerr] Fehler beim Instanziieren Modul modalFormApp aufgrund: [$ injector: nomod] Modul 'modalFormApp' ist nicht verfügbar! Sie haben entweder den Modulnamen falsch geschrieben oder vergessen, ihn zu laden. Wenn Sie ein Modul registrieren, stellen Sie sicher, dass Sie die Abhängigkeiten als zweites Argument angeben. – rock

Antwort

0

'ui.bootstrap' hat Voraussetzungen 'ngAnimate' und 'ngTouch'. Sie sollten sie zu Ihrem Modul

var app = angular.module("modalFormApp", ['ngAnimate','ngTouch','ui.bootstrap']); 

hinzufügen Und Sie sollten ihre Skripte zu Ihrer Ansicht

script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-animate.min.js") 
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-touch.min.js")