使用拼接过滤/搜索

时间:2017-11-14 19:29:28

标签: javascript angularjs

我想使用splice过滤api响应列表的结果。这是api的代码,它提供了列表:

function listData (){
   $http.get('/api/dataBrands')
    .then(function(data){
        $scope.list = data.data.Response;
});
    }

HTML视图:

<tr ng-repeat="info in list">
            <th>{{info.Id}}</th>
            <th>{{info.Name}}</th>

该列表的元素是品牌名称。然后,我有另一个api,我有所有品牌的事故。我正在做的是搜索事故清单上的品牌。如果有一个意外的品牌,我必须过滤。到目前为止,这是我的代码:

$scope.pursuit = function(){

        $scope.bringItOn = allInfo.get({Id: $scope.Id})
                        .$promise
                        .then(function(data){


                           for(var d = 0; d< data.Response.length; d++){
                                for(var e = 0; e< $scope.list.length; e++){
                                   if(data.Response[d].Id == $scope.list[e].Id){
                                       $scope.cut = $scope.list.splice($scope.list, 1);
                                        console.log($scope.list);
                             }

                                       }
                                        }

                        });

    }

allInfo.get在我的工厂宣布。这是搜索的HTML视图:

    <div class="x input-group">
<input type="text" class="form-control" placeholder="Search here!" ng-model="Id">
<span class="input-group-btn">
 <button class="btn btn-info" type="button" ng-click="pursuit()">Search</button>
</span>
</div>

代码似乎工作但不是我想要的。例如,让我有三个值:

1 Mars
2 Volvo
3 Pepsi

如果我搜索&#34;火星&#34;,它会拼接第一个值 - 即Mars-。如果我搜索&#34;百事可乐&#34;,它会拼接火星和沃尔沃,并且只显示百事可乐。如我所见,是&#34;删除&#34;第一个值。

我能做些什么才能使我的代码正常工作并拼接所有品牌,除了我正在搜索的价值?

希望你能帮助我。

我使用angularjs,javascript和bootstrap。

0 个答案:

没有答案