Флажок в угловом вопросе

0

Я устанавливаю флажок в угловом:

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

и в моем controller меня есть:

  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;
        });
    }
});

но в консоли у меня есть ошибка: Cannot set property 'rememberMe' of undefined, в чем проблема?

  • 1
    Трудно догадаться, что вы не определили $scope.model
Теги:
checkbox

3 ответа

2
Лучший ответ

Вы не можете определить напрямую

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

ты должен сделать

$scope.model = {};  //define object "model"
$scope.model.rememberMe = ... //set property rememberMe of "model"
0

возможно, вы забыли объявить $ scope.model.

Первый:

$ scope.model = {};

После:

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

0

Я думаю, что ваш контроллер должен быть:

 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;
        });
    }
});

Надеюсь, это поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню