agtong/yii2-treetable

使用jquery-treetable插件实现的Yii 2.0树形表格行为。提供了一个类似Gridview的组件。

安装: 20

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 3

类型:yii2-extension

v1.0.0 2023-10-20 07:26 UTC

This package is auto-updated.

Last update: 2024-09-20 09:36:51 UTC


README

使用jquery-treetable插件实现的Yii 2.0树形表格行为。提供了一个类似Gridview的组件。

安装

通过 composer 安装此扩展是首选方式。

运行以下命令之一

$ php composer.phar require agtong/yii2-treetable

或者在您的 composer.json 文件的 require 部分添加

"agtong/yii2-treetable": "*"

用法

使用 agtong\treetable\Treetable 组件代替Yii Gridview。以下示例将折叠表格中奇数行下面的所有偶数行。

    <?= Treetable::widget([
        'dataProvider' => $dataProvider,
        'rowOptions' => function($model, $key, $index, $grid) {
            if ($index % 2) {
                return ['data-tt-id' => $index, 'data-tt-parent-id' => $index-1];
            } else {
                return ['data-tt-id' => $index];
            }
        },
        'treetableOptions' => ['expandable' => true, 'indent' => 0], //Pass configuration options to $().treetable()
        // 'useOwnCss' => true, // default is false.
        // eg. add to view -> $this->registerCssFile(Yii::getAlias('@web') . '/css/your_own_treetable.css');
        'columns' => [
            ...
        ]
    ]); ?>

阅读treetable的文档(http://ludo.cubicphuse.nl/jquery-treetable/),了解如何使用 data-tt-iddata-tt-parent-id 来确定嵌套。如上所示的 rowOptions 函数可以与您的数据模型配合使用,以实现您想要的嵌套。

技巧

由于与Bootstrap布局严重冲突,不包括treetable的所有CSS。提供了一个CSS示例,用于使用图像样式展开/折叠的 <a>。查看与jquery-treetable一起提供的CSS以获取更多灵感。