3つの入れ子になったレベルで大きな成功を収めたuiグリッドを使用します。ビジネスは、連続する行の上に重ねるのではなく、次の行をプッシュダウンするために行を拡大する必要があります。このオーバーフロー/ zレイヤーの機能がui-grid.jsファイル内でどのように制御されているかはわかりません。どのようにこれを動作させるための任意の提案?ありがとう!Angularjs UIグリッド - 次の行に配置することなく行を展開する方法
答えて
ui-grid.jsファイルには、28,000行の末尾にあるすべてのテンプレートが含まれています。私は "ui-grid/expandableRow"のすべてのHTMLを自分のテンプレートファイルに入れて、いくつかのニーズに合わせて修正しました。 angularjsでは、自分自身の命名規則でそのテンプレートを指定します:
expandableRowTemplate: 'AngularApp/Templates/expandableAssetsRowTemplate.html'
テンプレートのコードは次のようになります。 I)が動作するためにいくつかの奇妙な理由のためのディレクティブ「UI-グリッド拡張行」を削除する必要がありました:
<div ui-grid="row.entity.subGridOptions" ui-grid-pagination ui-grid-expandable ui-grid-edit ui-grid-row-edit ui-grid-cellNav ui-grid-move-columns ui-grid-resize-columns
ng-if="expandableRow.shouldRenderExpand()"
class="expandableRow"
style="float:left; margin-top: 1px; margin-bottom: 1px"
ng-style="{width: (grid.renderContainers.body.getCanvasWidth()) + 'px' , height: row.expandedRowHeight + 'px' }">
</div>
結果に影響を与え、他のものは、親グリッドのgridOptionsで拡張可能な行の高さです。
expandableRowHeight: 390
ネストされたグリッドには高さの指定がありますが、この拡張された行の高さによって、親のグリッドは行を正しい高さに展開できます。
すべての結果として、親グリッドの行が展開され、ネストされたグリッドが親行の残りの部分を下にプッシュします。
注:私は元々チュートリアルにあるバニラexpandableRowTemplateを使用していたので、私の展開が正しく機能していなかったのです。 (上記のものと比較して)悪いテンプレートの
サンプル:私の場合
<div ui-grid="row.entity.subGridOptions" ui-grid-expandable
ui-grid-edit ui-grid-row-edit ui-grid-cellNav ui-grid-move-columns ui-grid-resize-column>
</div>
IはMYTABLEと呼ばれるUIグリッドとサブグリッドのいくつかの行であることができる内部を有しています。メイングリッドは配列array1で埋められます。 array1の各要素には、詳細の配列を含めることができます。 だけ私はこの操作を行う必要があります(サブグリッドの高さ属性を設定する):
$scope.myTable.expandableRowHeight *= (2 + row.entity.details.length) ;
row.entityは、次に配列1からの要素(メイングリッドの配列)
、expandCollapse方法でなければなりません
$scope.expandCollapseRow = function(row,$event){
$event.stopPropagation();
$scope.myTable.expandableRowHeight *= (2 + row.entity.details.length) ;
$scope.gridApi.expandable.toggleRowExpansion(row.entity);
};
expandableRowHeightは、angle-uiグリッドの既存の属性であることを忘れないでください。
あなたはこの画像でgirdセットアップに属性を見ることができます:
- 1. Angularjs UIグリッドで行(テキストボックス列)を新規/追加する方法
- 2. uiグリッドを展開するとデータが表示されない
- 3. Angularjs:各行のUIグリッドの動的ドロップダウン
- 4. CSSグリッドの行内にカードを展開する
- 5. マルチレイヤーuiグリッドの第2レベルサブグリッドの展開イベントを検出する方法
- 6. AngularJS uiグリッドの行を手動で更新する
- 7. 次の行を置き換えるのではなく、次の行に保存する方法
- 8. 剣道グリッドの行をクリックすると編集ポップアップを開く方法
- 9. 異なるIDで行を展開する方法は?
- 10. AngularJSを使用して、ホバー上のテーブルに展開可能な行を作成する方法は?
- 11. Antdテーブルの行を展開してテキストエリアを内側に配置する
- 12. エキスパンダーヘッダーに空の展開グリッドcolを作成する方法
- 13. uiグリッド行の更新
- 14. appceleratorで展開可能なリスト行を実装する方法
- 15. Angularjs UIグリッド
- 16. テキストファイルを開くことなく行数を取得する方法は?
- 17. 行を別の行に配置する方法は?/CSS
- 18. Sharepoint発行サイトを複数のサイトに展開する方法
- 19. rの行を列に展開する方法
- 20. レスポンシブセマンティックUIグリッド、列、行に反応する
- 21. AngularJS UIグリッド、0.00円で通貨をフィルタする方法
- 22. AngularJS UIグリッドが行選択の色を動的に上書きする
- 23. アイコンを変更してキノUIウィンドウにすばやく展開する方法
- 24. テキストとソーシャルメディアのアイコンを同じ行に配置する方法
- 25. 剣道UI:フッターにグリッドの要約値を配置する
- 26. Elasticbeanstalkで展開した後にコマンドを実行する方法
- 27. angularJSのグリッドとしてオートコンプリートドロップダウンを行う方法は?
- 28. すばやくこのUI設定公開アニメーションを行う方法
- 29. Web配置後の展開後スクリプトの実行
- 30. AngularJS UIグリッド:editDropdownOptionsFunctionとasync $ http.get