-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path14.Lesson_function-filter_Example.html
125 lines (72 loc) · 3.52 KB
/
14.Lesson_function-filter_Example.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>13.Lesson_function-filter</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.10/angular.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<script>
var ControllerExample = angular.module("myapp", []);
ControllerExample.controller("mycontrol", function ($scope) {
//mailler adında bir dizi tanımlandı
$scope.mailler = [
{ "mesaj": "Yarın akşam kaçta buluşuyoruz?", "durum": false },
{ "mesaj": "Tamam saat 9'da orada olurum", "durum": false },
{ "mesaj": "Bu konu hakkında daha fazla detay verebilir misin?", "durum": false },
{ "mesaj": "Belgeleri şimdi size yolladım.", "durum": false },
{ "mesaj": "Eksik olan belgeler şunlar:", "durum": false },
{ "mesaj": "Toplantı saat 12'ye ertelendi.", "durum": false },
{ "mesaj": "Uygulamanın kurulumu tamamlandı.", "durum": false }
];
//Silinenler adında boş bir dizi oluşturuldu
$scope.silinenler = []
$scope.SecilenSil = function () {
//Silme işlemi için bir dizi oluşturulmak gerekmektedir.
//filter sayesinde mailler dizisi tek tek taranacak ve durum alanı true değeri taşıyan alanlar silinenlere aktarılacak
$scope.silinenler = $scope.mailler.filter(function (a) {
return a.durum == true;
});
$scope.mailler = $scope.mailler.filter(function (a) {
return a.durum == false;
});
}
$scope.SecmeIslemi = function () {
//mailler dizisindeki indexlerin durum değerleri true yapılmalıdır
//mailler dizisindeki mesajların toplamı mesajSayisi değişkenine atandı
$scope.mesajSayisi = $scope.mailler.length;
for (baslangicDegeri = 0; baslangicDegeri < $scope.mesajSayisi; baslangicDegeri++) {
$scope.mailler[baslangicDegeri].durum = true;
}
}
$scope.SecimKaldir = function () {
//for döngsüyle işlem yapılıyır
for (baslangicDegeri = 0; baslangicDegeri < $scope.mesajSayisi; baslangicDegeri++) {
$scope.mailler[baslangicDegeri].durum = false;
}
}
});
</script>
</head>
<body ng-app="myapp" ng-controller="mycontrol">
<button ng-click="SecilenSil()" class="btn btn-warning">SİL</button>
<button ng-click="SecmeIslemi()" class="btn btn-light">HEPSİNİ SEÇ</button>
<button ng-click="SecimKaldir()" class="btn btn-danger">SEÇİMİ KALDIR</button>
<hr>
<div ng-show="mailler.length == 0">Tüm görevleri yerine getirdin!</div>
<ul>
<li ng-repeat="mail in mailler">
<input type="checkbox" ng-model="mail.durum"> {{mail.mesaj}}
</li>
</ul>
<hr>
<div ng-show="silinenler.length>0">
<p>Silinen Mesajlar:</p>
<ul>
<li ng-repeat="silinen in silinenler">
{{silinen.mesaj}}
</li>
</ul>
</div>
</body>
</html>