У меня есть контроллер div с инициализацией div с массивом внутри контроллера с использованием ng-init
. Мне нужно показать отфильтрованные объекты внутри этого массива, используя текст из текстового поля в виде фильтра , Также мне нужны объекты, которые будут отображаться, когда пользователь вводит данные во вход. Это мой основной код:Список фильтров и показать результаты при вводе текста в угловом
<!DOCTYPE html>
<html lang="en-US">
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script src="angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="personCtrl">
<div style="display:none" ng-init="CustList=[
{custid:1,custname:'Raj Export House1',address:'Plot.No.123, Industrial Area, Noida 201301'},
{custid:2,custname:'Vinay Export House2',address:'Plot.No.567, Industrial Area, New Delhi 201301'},
{custid:3,custname:'Maya Export House3',address:'Plot.No.777, Industrial Area, Faridabad 201301'},
{custid:4,custname:'Devat Export House4',address:'Plot.No.425, Industrial Area, Gurgaon201301'},
{custid:5,custname:'Yespal Export House5',address:'Plot.No.153, Industrial Area, Noida 201301'},
{custid:6,custname:'Abhinav Export House6',address:'Plot.No.1423, Industrial Area, Noida 201301'},
{custid:7,custname:'Surya Export House7',address:'Plot.No.1253, Industrial Area, Noida 201301'},
{custid:8,custname:'Lalata Export House8',address:'Plot.No.12553, Industrial Area, Gurgaon 201301'},
{custid:9,custname:'Raj Export House9',address:'Plot.No.12553, Industrial Area, Noida 201301'},
{custid:10,custname:'Manu Export House10',address:'Plot.No.15823, Industrial Area, Noida 201301'}]"></div>
<label>Search</label>
<input type="text" ng-model="txtSearch" ng-change="CallSearch(txtSearch)">
<ul>
<li style="display:none" ng-repeat="cust in CustList | filter:txtSearch">
{{ cust.custid + ' ' + cust.custname + ' ' + cust.address + ',' }}
</li>
</ul>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('personCtrl', function($scope) {
$scope.CallSearch = function(textSearch)
{
if(textSearch.length>0);
$("li").css("display","block");
}
});
</script>
Я также попытался с помощью ng-repeat="cust in CustListfunction()
и определить эту функцию внутри сферы
$scope.CustListfunction=function(){
var result=[];
angular.forEach($scope.CustList, function (item) {
if($scope.textSearch.length>0)
{
result.push(item);
}
});
return result;
}
Но не получил меня в любом месте, есть все, что мне не хватает. Благодаря
Благодарим за предложения, работая над ними и переделаю мой код. Работа над $ scope.textSearch может работать. Теперь я мог фактически получить все объекты из массива в текстовом режиме, но он не мог отображаться на экране. – rawatdeepesh