Javascript 如何在angularjs中使用与id相关的基于名称的过滤器

Javascript 如何在angularjs中使用与id相关的基于名称的过滤器,javascript,angularjs,Javascript,Angularjs,在我的angular应用程序中,我必须使用过滤器功能,但无法获得输出。我已将id存储在DB中,但在ng repeat中,我正在使用函数并从另一个作用域中获取相关的基于id的名称。它工作正常,但过滤器不工作 注意:如果筛选器基于ID工作,我需要基于名称进行筛选,请帮助如何执行此操作 模板代码: <input type="text" ng-model="json1.Name" class="searchbox" /> <hr/>Ng-Repeat<hr/> &l

在我的
angular
应用程序中,我必须使用过滤器功能,但无法获得输出。我已将
id
存储在DB中,但在
ng repeat
中,我正在使用函数并从另一个作用域中获取相关的基于id的名称。它工作正常,但过滤器不工作

注意:如果筛选器基于ID工作,我需要基于
名称进行筛选,请帮助如何执行此操作

模板代码:

<input type="text"  ng-model="json1.Name" class="searchbox" />
<hr/>Ng-Repeat<hr/>
<div ng-repeat="json in myJson | filter:json1">
  <li>  {{showCartName(json) || 'select'}}</li>     
</div>

在此附上我的

我认为这足以满足您的要求

 <div ng-app='app' ng-controller='mainCtrl'>
 <input type="text"  ng-model="json1.Name" class="searchbox" />
 <hr/>Ng-Repeat<hr/>`enter code here`
 <div ng-repeat="json in myJson1 | filter:json1.Name">
    <li>    {{showCartName(json) || 'select'}}</li>
 </div>


Ng Repeat
在此处输入代码`
  • {{showCartName(json)| |'select'}}
  • 满足您的要求就足够了

    尽管您也可以使用,但这使您能够灵活地实现所需的任何逻辑

    将此添加到控制器中:

    $scope.customFilter = function (json){
            if ($scope.json1 === undefined) return true;
            else{
             var Name =  $scope.showCartName(json);
                return (Name.indexOf($scope.json1) !== -1);
            }
        };
    
    以及HTML中的更改:

     <div ng-repeat="json in myJson  | filter:customFilter">
    
    
    

    共享链接,使用下面的结构<代码> [链接文本](链接URL)< /代码> @ Pengyy如何解决这个问题,下次当你问问题时,请考虑让它更可读。你想根据名字过滤列表吗?你在找类似的东西吗?我的数据在我的小提琴中看起来像这样我需要那种类型的过滤器:)@thanveer puhi@shivam它工作正常,但根据大写字母可能是大写的数据意味着我应该输入大写字母,然后只工作帮助如何解决这个问题,你可以用它创建一个临时字符串将输入转换为相同的大小写,并进行类似Name.toLowerCase().indexOf($scope.json1.toLowerCase())的检查!==-1或Name.toUpperCase().indexOf($scope.json1.toUpperCase())!==-1在Shivam Tiwari进行一次汉克检查
     <div ng-repeat="json in myJson  | filter:customFilter">