filtering based on multpiple value example 1

by Divya Manu

HTML

<div ng-app="myApp">
    <div ng-controller="myCntrl">
        <label>Case sensitive Search on Label</label>
        <select ng-model="prop" type="text" placeholder="Search for prop">
            <option value="name">Name</option>
            <option value="address">address</option>
        </select>
        <input ng-model="query" type="text" placeholder="Search for name" />
        <div ng-repeat="emp in emps | customFil:query:prop">{{emp.name}} {{emp.address}}</div>
        <div/></div>

JavaScript

angular.module('myApp', [])
    .controller("myCntrl", function ($scope) {
    $scope.query = "AB";
    $scope.prop = "address";
    $scope.emps = [{
        name: "AB",
        address: "Delhi"
    }, {
        name: "EF",
        address: "Blore"
    }, {
        name: "CD",
        address: "Mumbai"
    }]

})
    .filter('customFil', function () {

    return function (dealers, query, prop) {
        if (prop) {
            var obj = [];
            for (var i = 0; i < dealers.length; i++) {

                if (dealers[i][prop].toUpperCase().includes(query.toUpperCase())) {
                    obj.push(dealers[i]);

                }
            }

            return obj;
        }
    }

});