2016-05-27 7 views
0

私のページでは、api呼び出しに基づいてフォームをレンダリングしています。ヘルプカップルフィルタを使用すると、titleに 'id'があり、0と等しいすべての要素が隠されていますが、初期要素IDを表示する必要があります。私は '$ first'を使用しますが、最初の要素はチェックボックスの値なので、どうすればできますか?私はどんな助けにも感謝します。 applied plunkng-repeat初期以外のすべての要素を非表示にする

var app = angular.module('plunker', []); 

app.controller('MainCtrl', function($scope, $http) { 

    $scope.upload = function(){ 

     $scope.rowKeys = Object.keys($scope.rowData); 
     }; 

    }); 

app.filter('hide', function() { 
    return function(input, arg) { 
     return input.replace(arg, ''); 
    }; 
}) 

HTML

<form style="padding: 15px"> 
    <button class="btn btn-default" ng-click="upload()">Upload</button> 
    <div class="form-group row"> 
    <div ng-repeat="k in rowKeys | filter: '!id' | filter: '!0'" ng-model="rowValue"> 
     <label for="rowValue" class="col-sm-2">{{k | hide:'.name'}}:</label> 
     <div class=" col-sm-2"> 
     <input class="form-control rowValue" id="rowValue" value="{{rowData[k]}}" /> 
     </div> 
    </div> 
    </div> 
    <button type="submit" class="btn btn-default" ng-if="rowData" ng-disabled="!rowValue">Submit</button> 
</form> 

答えて

1

あなたはこのためにng-ifを利用することができます:

<div ng-repeat="thing in things"> 
    <div ng-if="(thing === 'id' || thing.toLowerCase().endsWith('id') === false) ? true : false"> 
     {{thing}} 
    </div> 
</div> 
+0

それはまだdoesntのディスプレイID https://plnkr.co/edit/Fi07qcnGFIX3RV75PCt4?p=プレビュー – Anton

+0

よろしくお願いします。 '(k === 'id' || k.toLowerCase().indexOf( 'id')=== -1)を試してください。 true:false' –

+0

@Antonキーのいずれかが** myRaidTeam **などの場合に備えて、代わりにendsWith()を使用するように私の回答を編集しました。それでも、 'id'で終わるキーを除外してしまう可能性があります。 –

関連する問題