當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


AngularJS ng-change用法及代碼示例


隻要輸入元素的值發生更改,就會使用AngularJS中的ng-change指令。輸入值發生變化時,將立即對表達式求值。它要求存在ng-model指令。隻要輸入中有任何單個更改,就會觸發該事件。它可以與<input>,<textarea>,<checkbox>和<select>之類的輸入元素一起使用。

用法:

<element ng-change="expression"> Contents... </element>

其中,表達式是指隻要輸入值更改就執行的表達式。


範例1:本示例使用ng-change指令通過複選框顯示/隱藏某些內容。

<!DOCTYPE html> 
<html> 
      
<head> 
    <title>ng-change Directive</title> 
  
    <script src= 
"https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"> 
    </script> 
  
    <script type="text/javascript"> 
        var app = angular.module('geek', []); 
        app.controller('app', function ($scope) { 
            $scope.show = function () { 
                if ($scope.check == true) 
                    $scope.result = true; 
                else 
                    $scope.result = false; 
            } 
        }); 
    </script> 
</head> 
  
<body style="padding:30px"> 
    <div ng-app="geek" ng-controller="app"> 
        <h1 style="color:green">GeeksforGeeks</h1> 
        <h2>ng-change Directive</h2> 
          
        Check to show/hide details <input type="checkbox"
                    ng-change="show()" ng-model="check"> 
        <br><br> 
          
        <div style="padding:10px; border:1px solid black;  
                width:30%;color:green" ng-show='result'> 
            GeeksforGeeks is the computer science 
            portal for geeks. 
        </div> 
    </div> 
</body> 
  
</html>

輸出:
在選中複選框之前:
ng-change
選中複選框後:
ng-change

範例2:本示例返回複選框狀態更改的次數以及複選框的當前狀態。

<!DOCTYPE html> 
<html> 
      
<head> 
    <title>ng-change Directive</title> 
  
    <script src= 
"https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"> 
    </script> 
</head> 
  
<body ng-app="geek" style="text-align:center"> 
    <h1 style="color:green">GeeksforGeeks</h1> 
    <h2>ng-change Directive</h2> 
    <div ng-controller="prop"> 
        <div> 
            Are you a developer:   
            <input type="checkbox" ng-model="isTrue"
            ng-change="cnt=cnt+1" ng-init="cnt=0"/> 
        </div> 
        Count:{{cnt}} 
        <pre>{{isTrue}}</pre> 
    </div> 
      
    <script> 
        var app = angular.module("geek", []); 
        app.controller('prop', ['$scope', function ($app) { 
            $app.isTrue = false; 
        }]); 
    </script> 
</body> 
  
</html>

輸出:
在選中複選框之前:
ng-change
選中複選框後:
ng-change



相關用法


注:本文由純淨天空篩選整理自Vishal Chaudhary 2大神的英文原創作品 AngularJS | ng-change Directive。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。