AngularJS ng-click指令不调用函数

Con*_*nor 1 html javascript angularjs

我正在尝试使用ng-click来调用我的控制器中的一个函数,但是我无法让它工作.我把一切都剥离到最简单的形式,所以我现在有这个:

<button id="submitBtn" type="submit" class="btn btn-default"
  ng-click="count = count + 1; count = count + 2; alert('hello');" >Submit</button>    
Run Code Online (Sandbox Code Playgroud)

前两个语句(count = count + 1; count = count + 2;)执行得很好,但它不会调用alert函数.当我取出两个计数递增语句时,警报仍然不起作用.无论何时我尝试调用一个函数,它都会失败,但是普通的旧Javascript可以工作.

(仅仅是一个FYI,我在页面上有Javascript,阻止表单提交和触发回发).

编辑:

我将包含我的控制器代码:

myApp.controller('LawSearchController', ['$scope', function ($scope) {

    $scope.alert = function (text) {
        alert(text);
    };
}]);
Run Code Online (Sandbox Code Playgroud)

Cod*_*rer 5

您在a ng-expression中调用的所有函数都在$ scope的上下文中.

因此,当你说它alert()编译scope.alert()为未定义的,并且无声地失败.

在您的控制器中,包含代码

$scope.alert = alert