## 方法原型:
```
addRightButton($type = '', $title = '', $url = '', $linkType = 'link', $attr = [])
```
> 关于按钮的详细说明请参考[按钮操作](./按钮操作.md)一节。
> 注意: 添加操作按钮必须在添加列时添加操作栏一列, 否则即使加了右侧按钮也不会显示
## 参数说明:
```
* @param string $type 按钮类型:edit/enable/disable/delete/custom
* @param string $title 按钮标题
* @param string $url 按钮操作链接,在url中,可以使用'__字段名__'的方式获取当前行数据字段的值
* @param string $linkType 链接类型 link-普通跳转 ajax-ajax请求 pop-打开弹窗 null-无操作
* @param array $attr {
* type: 按钮类型,
* round: 是否圆角,
* plain: 是否朴素按钮(默认true),
* circle: 是否圆形按钮,
* icon: 按钮图标,
* disabled: 按钮是否禁用,
* target: 按钮链接跳转类型(linkType为link时有效),
* confirm: false|true|{title, tips, type:warning}-按钮点击时是否需要确认框,
* extra_data: 附加数据, 表单提交时会把附加数据提交,在extra_data中,可以使用'__字段名__'的方式获取当前行数据字段的值,
* batch: 是否批量操作(会附带当前选中的数据ID),
* hide: true|{field: value},按钮隐藏规则,当指定的字段值与指定的值相等时隐藏该按钮,value可以是一个值,也可以是一系列值的数组。
* }
```
## 调用方式
- 添加基础功能按钮
```
return SBuilder::make('table')
->addTopButton('edit') // 编辑按钮
->addTopButton('enable') //启用
->addTopButton('disable') // 禁用
->addTopButton('delete') // 删除
->fetch();
```
> 内置的启用禁用按钮会自动添加一个隐藏触发器,当状态等于1时隐藏启用按钮,当状态等于0时隐藏禁用按钮。并已内置好了相关操作。
> 页面效果:
![](https://box.kancloud.cn/6241056101703b567465264d236aff72_160x295.png)
- 可以通过type传递为其他值(不仅限于custom,只要不是内置类型,都属于自定义按钮),设置自定义按钮:
```
return SBuilder::make('table')
->addRightButton('detail', '查看详情', url('detail', ['id' => '__id__']), 'link', ['icon' => 'el-icon-s-grid'])
->fetch();
```
> 页面效果:
![](https://box.kancloud.cn/a08fc48b7660471c822da412ac54f9c5_222x286.png)
- 批量添加右侧按钮:`addRightButtons($buttons = [])`,`buttons`中的每一项都是一个按钮元素。