Bài 23: Directive ng-click trong angularjs
Trong các đối tượng HTML (các thẻ HTML) có một sự kiện mà đối tượng nào cũng có đó là onclick, sự kiện này xảy ra khi chúng ta dùng chuột click vào phạm vi hiển thị của thẻ đó, nếu các thẻ chồng lên nhau thì khi chúng ta click thì cấp cao nhất sẽ được xảy ra trước. Với angular thì nó cung cấp cho chúng ta một directive tương tự đó là ng-click, cách hoạt động nó cũng không khác gì sự kiện onclick. Chi tiết chúng ta sẽ tìm hiểu qua các ví dụ dưới đây nhé.

1. Tìm hiểu directive ng-click trong angularjs
Sự kiện này sẽ xảy ra khi chúng ta click vào thẻ hiện tại. Cú pháp là <element ng-click="statment"></element>, trong đó:
- ng-click là tên của directive ngClick
- statment là những dòng lệnh sẽ chạy. Bạn có thể truyền vào hàm hoặc những đoạn code rời rạc
2. Các ví dụ về ng-click trong angularjs
Chúng ta sẽ xây dụng một ứng dụng đơn giản đó là thực hiện đếm số lần click vào thẻ button bằng hai cách (Gọi đến hàm và xử lý trực tiếp)
Gọi đến hàm
Cách này chúng ta sẽ gọi đến một hàm khai báo trong $scope ở controller.
Bài viết này được đăng tại [free tuts .net]
<!doctype html>
<html lang="vi">
<head>
<meta charset="UTF-8">
<title>NG-CLICK trong AngularJS - Freetuts.net</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular.min.js"></script>
<style>
*{margin:0;padding:0}
body{margin:20px;}
</style>
<script>
/*
* Author: [email protected]
* Website: freetuts.net
*/
angular.module('ngCLickExample', [])
.controller('ngClickController', function($scope){
// Gán giá trị khởi đầu cho count
$scope.count = 0;
// Hàm tăng count lên 1 đơn vị
$scope.TangBienCount = function(){
$scope.count++;
};
});
</script>
</head>
<body ng-app="ngCLickExample" ng-controller="ngClickController">
<h1>Freetuts.net - ng-click</h1>
<input type="button" value="Click Me" ng-click="TangBienCount()" /> <br/><br/>
<span>Bạn đã click {{count}} lần</span>
</body>
</html>Xử lý trực tiếp
Cách này chúng ta xử lý trực tiếp ngay tại vị trí ng-click luôn.
<!doctype html>
<html lang="vi">
<head>
<meta charset="UTF-8">
<title>NG-CLICK trong AngularJS - Freetuts.net</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.2/angular.min.js"></script>
<style>
*{margin:0;padding:0}
body{margin:20px;}
</style>
<script>
/*
* Author: [email protected]
* Website: freetuts.net
*/
angular.module('ngCLickExample', [])
.controller('ngClickController', function($scope){
// Gán giá trị khởi đầu cho count
$scope.count = 0;
});
</script>
</head>
<body ng-app="ngCLickExample" ng-controller="ngClickController">
<h1>Freetuts.net - ng-click</h1>
<input type="button" value="Click Me" ng-click="count = count + 1" /> <br/><br/>
<span>Bạn đã click {{count}} lần</span>
</body>
</html>
3. Lời kết
Quá đơn giản cho phần này, bản chất nó hoạt động giống như sự kiện onclick trong javascript thôi nên bạn rất dễ hiểu đối với directive này. Chúc các bạn học tốt và nhớ theo dõi ủng hộ những bài viết mới tiếp theo của freetuts.net nhé.

Các hàm xử lý chuỗi trong Javascript (cắt / tách / nối chuỗi ..)
Chia lấy phần dư / chia lấy phần nguyên trong javascript
Các cách khai báo biến trong Javascript
Các sự kiện (Event) trong Javascript
Hướng tạo thanh search bar bằng CSS
Hàm array.slice() trong Javascript
Tính tổng hai số bằng Javascript (cộng hai số)
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng