2016-10-04 128 views
0

我想將自定義過濾器應用到數組,這裏是代碼,我是新手角js.Please幫助我弄清楚。如何將自定義過濾器應用到數組,是否可以應用自定義過濾到數組 我想使用此過濾器製作名稱大寫的每個第二個字母,但過濾器未應用於x.name。角js自定義過濾器陣列

<div ng-app="myapp" ng-controller="my"> 

    <table border="1"> 
     <tr> 
      <td ng-click="orderbyme('name')">Name</td> 
      <td ng-click="orderbyme('city')">City</td> 
     </tr> 

     <tr ng-repeat="x in names | orderBy:myorder"> 
      <td>{{x.name | myformat}}</td> 
      <td>{{x.city}}</td> 
     </tr> 
    </table> 

</div> 


<script> 
    var a=angular.module('myapp',[]); 

    a.filter('myformat',function(){ 
     return function(x.name){ 
      var i,c,j,txt=""; 
      j=x.name; 
      for(i=0;i<x.length;i++) { 
        c=j.[i]; 

        if(i%2==0){ 
        c = c.toUpperCase(); 
        } 

      txt=txt+c; 
     } 
     return txt; 
     }; 
    }); 


    a.controller('my',function($scope){ 
     $scope.names= [{name:'sarthak ',city:'nagpur'}, 
         {name:'sayali ',city:'pune'}, 
         {name:'amit ',city:'mumbai'}, 
         {name:'komal ',city:'saoner'}, 
         {name:'dhiraj ',city:'wardha'}, 
         {name:'nikhil ',city:'yavatmal'}, 
         {name:'sanjeev ',city:'delhi'}, 
         {name:'bhavin ',city:'banglore'} 

         ] 

     $scope.orderbyme=function(x){ 
      $scope.myorder=x; 
     } 
    }); 
</script> 
+0

請提供一個適當的解釋,你期望這個過濾器做什麼以及一個預期的結果樣本。您應該花幾分鐘時間查看[問],然後[更新](http://stackoverflow.com/posts/39858558/edit)以及適當的細節 – charlietfl

回答

0

你想要做的是點擊表頭的順序嗎? 這對你想要做的事更明確一點。