ng-model is undefined in controller
I had exact the same issue recently and that's probably a solution:https://stackoverflow.com/a/22768720/552936
Modified quote:
"If you use ng-model, you have to have a dot in there."
Make your model point to anobject.property
and you'll be good to go.Controller
$scope.formData = {};$scope.login = function () { console.log("User logged in with membership no: " + $scope.formData.membershipNo + "\n and password: " + $scope.formData.password); }
Template
<input type="text" placeholder="Membership No" ng-model="formData.membershipNo"><input type="password" placeholder="Password" ng-model="formData.password">
Please check this code This is worked for me:
<div class="row row-center"> <div class="col"> <div id="logo"></div> <form> <div class="list"> <label class="item item-input"> <input type="text" placeholder="Membership No" ng-model="data.membershipNo"> </label> <label class="item item-input"> <input type="password" placeholder="Password" ng-model="data.password"> </label> </div> <button class="button button-block button-positive button-login" ng-click="login()"> Login </button> </form> </div></div>
and in your-controller:
app.controller('loginController', ['$scope', function($scope) { $scope.data={}; $scope.login = function () { console.log("User logged in with membership no: " + $scope.data.membershipNo + "\n and password: " + $scope.data.password); }}]);
You need to define your $scope variables like this in your controller:
$scope.membershipNo = '';$scope.password = '';
So your controller would look like:
app.controller('loginController', ['$scope', '$localstorage', function($scope, $localstorage) { $scope.membershipNo = ''; $scope.password = ''; $scope.login = function () { console.log("User logged in with membership no: " + $scope.membershipNo + "\n and password: " + $scope.password); }}]);