2016-05-06 1 views
0

私はどのように進むべきかアドバイスを探していて、誰かが同様の要件を実装しているかどうかを見たいと思っていました。 潜在的なアプローチについていくつかご提案ください。 私はOKボタンをチェックボックスに置き換えるためにちょっと変わった角度のuiグリッドを持っています。 UIグリッド内のすべての行を選択する「すべて選択」をクリックすると正常に機能します。しかし、私はページ区切りの現在のページに選択範囲を絞り込むことを検討しています。 ページ間を移動するときに選択を保持する必要があります。
ユーザーが選択するページ1 "すべて選択する"チェックボックス。その後、ページ2に行き、「すべて選択」チェックボックスを選択することができます。この時点でPage 1とPage 2を選択する必要があります。選択された2ページ以上のものがあるかもしれませんが、select allが選択されているページのみが選択されるべきです。ui-gridすべてを選択してスコープを現在のページに限定します

読書のあなたの時間をありがとう。ここで提案

を提供するには、ページネーションとチェックボックスとPlunkerリンクです。

[http://plnkr.co/edit/Ji7gLbfQTohnEj04mYFM?p=preview][1]   

どうもありがとう

答えて

1

表示される行を選択し、選択を制限:ページ上のすべての行の選択を検出するために

gridOptions

enableSelectionBatchEventを設定する必要があります本当に。

$scope.gridOptions.onRegisterApi = function(gridApi){ 
     //set gridApi on scope 
     $scope.gridApi = gridApi; 

    // detect bulk selection 
     gridApi.selection.on.rowSelectionChangedBatch($scope,function(rows){ 
       //logic to save the selected visible rows. 

     }); 

ui.grid.selectionパブリックAPIメソッドはgridOptionssaveSelectionというプロパティを提供
UIグリッドによって提供されるこの選択範囲が制限されたら、saveState機能を使用できる唯一の可視行を選択するselectAllVisibleRows(event)

と呼ば提供現在選択されている行が保存され、デフォルトはtrueに設定されます

ページ2に移動したら、次のようにデータを保存してください。

セーブデータ:

$scope.state = {}; 
$scope.state = $scope.gridApi.saveState.save(); 

ロード2ページで、あなたがこのようなデータを復元する必要がありますが -

が保存されたデータを復元します。

$scope.gridApi.saveState.restore($scope, $scope.state); 

これらのチュートリアルに従ってください。詳細:
Selecting rows
Save Selection

関連する問題