合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## 添加一列 添加表格的列,不管什么类型的字段,都是用通用方法: ``` addColumn($name = '', $title = '', $type = '', $option = '', $default = '', $attr=[]) ``` 参数说明: ``` * @param string $name 字段名 * @param string $title 标题 * @param string $type 类型, 为空时默认为text类型 * @param string|array $option 选项 * @param string $default 值为空时的默认值 * @param array $attr 其他属性, 如触发器等 { * trigger: {key: value}, // 用于控制当前列是否显示, value可以是一个数组, 若传了trigger参数, 只有当前行数据中出现在value中时才显示 * fixed: 是否固定列, * show_tooltip: 是否在长度超出后显示tooltip * } ``` 支持的类型: 1. [文本(text)](./table/text.md) 2. [状态(status)](./table/status.md) 3. [是否(yesno)](./table/yesno.md) 4. [时间(datetime)](./table/datetime.md) 5. [图片(image)](./table/image.md) 6. [图片列表(images)](./table/images.md) 7. [外部图片(external_image)](./table/external_image.md) 8. [外部图片列表(external_images)](./table/external_images.md) 9. [链接(link)](./table/link.md) 10. []() 11. []() 12. [多选框栏](./table/checkbox.md) 13. [数量索引栏](./table/index.md) 14. [操作栏](./table/option.md) ## 批量添加列 ``` addColumns($columns = []) ``` > 其中columns参数中每个元素是一个对应添加单列中的参数的数组。 综合操作举例(此处为了方便,使用[addColumns](./table/addColumns.md)方法举例): ``` return SBuilder::make('table') ->addColumns([ ['__checkbox__'], // 多选框栏 ['__index__'], // 数量索引,默认标题为 # ['name', '名称'], // 文本 ['enable', '是否开启', 'yesno'], // 是否 ['status', '状态',], // 状态 ['avatar', '头像', 'image'], // 图片 ['pics', '图片列表', 'images'], // 图片列表 ['wx_avatar', '微信头像', 'external_image'], // 外部图片 ['ext_pics', '网络图片', 'external_images'], // 外部图片列表 ['create_time', '网络图片', 'datetime'], // 显示时间 ['__btn__'], // 操作按钮 ]) ->fetch(); ``` - 触发器 可使用触发器控制行数据是否在当前列显示, 如上main的数据中, 若要id为1,2,3才显示`name`: ``` return SBuilder::make('table') ->addColumn('name', '姓名', '', '', '', [ 'trigger' => ['id' => [1,2,3]] ]) ->fetch(); ``` > 注意: 当trigger中存在多个字段的条件时, 判断关系为或的关系,若需要其他复杂关系处理, 请在获取列表逻辑中直接处理。