2017-08-30 8 views
1

HTMLまたはAngular ng-gridの繰り返しセル列に空白を入れる方法は?SQLに基づく角テーブル内の反復列値を非表示

2列を返すSQLがあります:

SELECT country, city FROM t ORDER BY country 

は現在、私は、ブラウザでSQL結果を表示するように角度1.2とhttps://github.com/angular-ui/ui-grid#v2.0.12 を使用しています:

Country City 
------- ---- 
FRANCE Paris 
FRANCE Lyon 
ITALY  Rome 
ITALY  Milan 

私は繰り返しを非表示にしたいと思います国名(1回だけ表示)。 )

1サーバ側に余分な作業を行います:私はこれを達成するための3つのオプションを検討

Country City 
------- ---- 
FRANCE Paris 
      Lyon 
ITALY  Rome 
      Milan 

:結果はこれを好まなければならない代わりに、データが解消するマッサージんフロントエンドにSQL結果を返しますNG-グリッドを使用すると、HTMLテーブルを構築するために角度のNG・リピートを使用して...まだ見つけることができませんしないでください)角度のNG-グリッドは

3埋め込まれた、このオプションを持っている場合はこちら)結果

2で国を複製重複を削除する方法

+0

をソート列にあなたの柔軟性を提供します。今日、すべてのSQLデータを表示することはできますが、問題は国別に問題に直面しているとします。 –

+0

私はGROUP BY国にする必要はありません。私は、元の結果と同じように、正確に同じ#または行を表示したいだけです。繰り返しの国を隠したいだけです。 – user510040

+0

あなたは次のようにしたいですか?http://ui-grid.info/docs/#/tutorial/209_grouping? –

答えて

1

データで何らかの操作を行い、showの値をtrue/falseと設定します。後、あなたはいくつかのカスタムセルテンプレートを書くことができます。

$scope.myData = [ 
    { 
     "country": "FRANCE", 
     "city": "Paris", 
     "show": true 
    }, 
    { 
     "country": "FRANCE", 
     "city": "Lyon", 
     "show": false 
    }, 
    { 
     "country": "ITALY", 
     "city": "Rome", 
     "show": true 
    }, 
    { 
     "country": "ITALY", 
     "city": "Milan", 
     "show": false 
    } 
]; 

var template = '<div class="grid-tooltip">' + 
         ' <div class="ui-grid-cell-contents" data-ng-if="row.entity.show">' + 
         '  {{ COL_FIELD }}' + 
         ' </div>' + 
         ' </div>'; 

$scope.gridOptions = { 
    data:$scope.myData, 
    columnDefs: [ 
    { 
     name: 'country', 
     displayName: 'Country', 
     field: 'country', 
     cellTemplate: template 
    }, 
    { 
     name: 'city', 
     displayName: 'City', 
     field: 'city' 
    } 
    ] 
    } 

Demo Plunker


をまた、あなたがこれまでに何をしたか、あなたのコードを、ポスト

関連する問題