0

I define a checkbox in angular like this :

<input type="checkbox" id="rememberMe" name="rememberMe" ng-model="model.rememberMe" value="1" />

and in my controller i have :

  app.controller('loginController', function ($http, $scope) {

    $scope.login = function () {
        $scope.model.rememberMe = $scope.rememberMe == undefined ? false : true;       
        $http.post("/Accounts/UserLogin", $scope.model).success(function (response) {
            $scope.message = response;
        });
    }
});

but in console i have an error :Cannot set property 'rememberMe' of undefined, what is the problem?

1
  • 1
    Hard guess you didnt define $scope.model Commented Nov 2, 2015 at 13:29

3 Answers 3

2

You can't define directly

$scope.model.rememberMe
//$scope.model is not defined (=undefined), therefore you get :
//Cannot set property 'rememberMe' of undefined

you have to do

$scope.model = {};  //define object "model"
$scope.model.rememberMe = ... //set property rememberMe of "model"
Sign up to request clarification or add additional context in comments.

Comments

0

I think that your controller should be:

 app.controller('loginController', function ($http, $scope) {
    $scope.model = { rememberMe: false };
    $scope.login = function () {
        $scope.model.rememberMe = $scope.rememberMe == undefined ? false : true;       
        $http.post("/Accounts/UserLogin", $scope.model).success(function (response) {
            $scope.message = response;
        });
    }
});

I hope this help.

Comments

0

maybe you forgot to declare the $scope.model.

First:

$scope.model = {};

After:

$scope.model.rememberMe = $scope.rememberMe == undefined ? false : true;

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.