Angular.js – using ng-show to filter a list
A simple Angular.js example of using ng-show to filter a table.
<!DOCTYPE html>
<html ng-app="testApp">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<meta name="description" content="Tizen Angular.js example"/>
<title>Tizen Angular.js example</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"/>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/angular.min.js"></script>
<script>
var app = angular.module('testApp', []);
app.controller('AppController', function($scope) {
$scope.people= [{name:'Bart', surname:'Blaskovitz', sex: 'male'},
{name:'Luke', surname:'Berrynski', sex: 'male'},
{name:'Radoslav', surname:'Manymountain', sex: 'male'},
{name:'Caroline', surname:'Rabbit', sex: 'female'}];
$scope.sexType = "male";
});
</script>
</head>
<body>
<div ng-controller="AppController">
<p>Employee listing</p>
<br>
FILTER BY SEX:
<br><br>
<form>
<input id="maleRadio" type="radio" name="sex" ng-model="sexType" value="male" checked>Male
<br>
<input id="femaleRadio" type="radio" name="sex" ng-model="sexType" value="female">Female
</form>
<br><br>
<ul>
<li ng-repeat="x in people | orderBy: 'surname'" ng-show="sexType == x.sex">
{{ x.name + ', ' + (x.surname | uppercase) }}
</li>
</ul>
</div>
</body>
</html>