AngularJS 事件

一、概述

AngularJS 提供了一系列事件指令,用于将事件(如点击、鼠标移入等)绑定到 HTML 元素上。

最常用的是 ng-click​ 指令。


二、ng-click 指令

ng-click 指令用于定义 AngularJS 点击事件

基本用法

<body>
    <div ng-app="myApp" ng-controller="myCtrl">
        <button ng-click="count = count + 1">点我!</button>
        <p>{{ count }}</p>
    </div>

    <script>
        var app = angular.module('myApp', []);
        app.controller('myCtrl', function ($scope) {
            $scope.count = 0;
        });
    </script>
</body>Code language: HTML, XML (xml)

说明

  • 点击按钮时,count 的值加 1
  • ng-click 中可以直接写表达式,也可以调用 $scope 上定义的函数

三、ng-click 调用函数

更常见的做法是在 $scope 上定义函数,然后在 ng-click 中调用。

隐藏/显示元素示例

<body>
    <div ng-app="myApp" ng-controller="personCtrl">

        <button ng-click="toggle()">隐藏/显示</button>

        <p ng-hide="myVar">
            名: <input type="text" ng-model="firstName"><br>
            姓名: <input type="text" ng-model="lastName"><br>
            <br>
            Full Name: {{ firstName + " " + lastName }}
        </p>

    </div>

    <script>
        var app = angular.module('myApp', []);
        app.controller('personCtrl', function ($scope) {
            $scope.firstName = "John";
            $scope.lastName = "Doe";
            $scope.myVar = false;

            $scope.toggle = function () {
                $scope.myVar = !$scope.myVar;
            };
        });
    </script>
</body>Code language: HTML, XML (xml)

说明

  • ng-click="toggle()":点击按钮时调用 toggle() 函数
  • toggle() 函数将 myVar 取反
  • ng-hide="myVar":当 myVartrue 时,段落隐藏;为 false 时,段落显示
  • 点击按钮即可实现 隐藏/显示切换

四、ng-hide 回顾

指令值为 true值为 false
ng-hide元素隐藏元素显示

本例中 ng-hide 配合 ng-click 使用,实现了交互式的显示/隐藏效果。


五、总结

指令作用
ng-click定义点击事件,可写表达式或调用函数
ng-hide根据布尔值控制元素隐藏/显示
  • ng-click 中可以直接操作 $scope 变量,也可以调用 $scope 上定义的函数
  • 配合 ng-show / ng-hide 可以轻松实现 显示/隐藏切换计数器等交互效果

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注