可以在表单底部添加额外的按钮,额外按钮位于默认按钮后面。
## 方法原型:
`setBtnExtra($title = '', $url = '', $linkType = 'link', $attr = [])`
## 参数说明:
```
* @param string|array $title 按钮标题或按钮数组
* @param string $url 按钮地址,用于link跳转、pop弹框或ajax提交的地址
* @param string $linkType 跳转类型 ajax-提交表单,link-页面跳转,pop-打开弹窗,null无操作,默认为页面跳转
* @param array $attr 按钮属性: {
* type:default|primary|success|info|warning|danger|text, // 按钮类型,默认 primary
* round:true|false, // 按钮是否圆角,默认 false
* plain:true|false, // 是否朴素按钮,默认 false
* circle:true|false, // 是否圆形按钮,默认 false
* icon, // 按钮图标,可选择的图标见icon表单项
* disabled, // 是否禁用,默认 false
* flag: 按钮标记,用于对按钮进一步操作,默认按钮的flag为submit和cancel
* target: 按钮链接跳转类型(linkType为link时有效, _blank表示新页面打开链接),
* confirm: false|true|{title, tips, type:warning}, 按钮点击时是否需要确认框,
* extra_data: 附加数据, 表单提交时会把附加数据提交,
* }
```
> 更具体的说明参考[按钮操作](按钮操作.md)
## 调用方式
- 设置额外按钮
```
return SBuilder::make('form')
->setBtnExtra('额外按钮,跳转链接', 'http://baidu.com')
->fetch();
```
> 页面效果:
![](https://box.kancloud.cn/bcf440dbed22fcb1e368e3290b3270de_189x65.png)
- 点击按钮时弹出确认框
```
return SBuilder::make('form')
->setBtnExtra('额外按钮, 打开弹框', '/admin/demo/detail', 'pop', [ 'confirm' => true ])
->fetch();
```
> 页面效果:
![](https://box.kancloud.cn/15ae9a01a5b5910ad7813d6d0096d93d_150x47.png)
点击后:
![](https://box.kancloud.cn/485ddc82dc4d96f557b4068c310290cd_489x164.png)
- 自定义确认框内容(可同时自定义弹框的类型)
```
return SBuilder::make('form')
->setBtnExtra('删除操作', url('delete'), 'ajax', [
'confirm' => [
'title' => '确认要删除吗?',
'tips' => '删除后将不可恢复!',
'type' => 'error',
]
])
->fetch();
```
> 页面效果:
![](https://box.kancloud.cn/186fd95e4544bd51861326c24c71cd6e_120x50.png)
点击后:
![](https://box.kancloud.cn/f685856ffde629e31e76d1dba34407c7_519x172.png)
- 批量设置额外按钮
```
return SBuilder::make('form')
->setBtnExtra([
['额外按钮,跳转链接', 'http://baidu.com'],
['额外按钮, 打开弹框', '/admin/demo/detail', 'pop', ['confirm' => true]],
])
->fetch();
```
> 页面效果:
![](https://box.kancloud.cn/191e39fb0ff4b23934f8df53d3e13da3_329x60.png)
- 序言
- 下载及安装
- 目录结构
- 基础
- 多站点-单入口文件(推荐)
- (旧)多站点-多入口文件方式
- (旧)入口文件
- (旧)站点配置
- 按钮操作
- 区块概念
- 构建器(SBuilder)
- 页面-Page
- 设置页面标题
- 添加页面提示信息
- 设置页面Tab
- 设置页面背景色
- 设置是否点击遮罩关闭
- 添加区块
- 区块-Block
- 设置区块名
- 设置区块布局
- 表单(form)
- 添加表单项通用方法
- 添加表单项
- 单行文本框
- 多行文本框
- 数字输入框
- 密码框
- 数组输入框
- 单选框
- 状态选择器
- 复选框
- 下拉框
- 级联选择器
- 开关
- 日期选择器
- 日期时间选择器
- 日期范围选择器
- 日期时间范围选择器
- 时间选择器
- 时间范围选择器
- Tree 树形组件
- 图标选择器
- 颜色选择器
- 单图片上传
- 多图片上传
- 视频上传
- 单文件上传
- 多文件上传
- 富文本编辑器-QEditor
- 富文本编辑器-UEditor
- 小程序富文本
- 静态文本
- 隐藏表单项
- 表格数据输入框
- 分组
- 地图选择器(未实现)
- 地区选择器(未实现)
- 穿梭框(未实现)
- 图片裁剪(未实现)
- 邮箱输入框(未实现)
- 设置表单LabelWidth
- 设置表单提交地址
- 设置默认按钮标题
- 提交表单确认框
- 隐藏默认按钮
- 添加额外按钮
- 设置触发器
- 设置表单数据
- 表单布局
- 模板
- 表格(table)
- 设置表名
- 添加顶部按钮
- 添加时间段筛选
- 设置搜索栏
- 添加列
- text
- byte
- status
- tags
- yesno
- datetime
- icon
- image
- images
- external_image[已废弃]
- external_images[已废弃]
- link
- html
- select
- text.edit
- group
- 多选框栏
- 数量索引栏
- 操作栏
- 右侧操作按钮
- 设置多选框
- 设置显示数量索引
- 设置列表数据地址
- 直接设置数据
- 关闭ajax获取数据功能
- 设置分页
- 自动新增
- 自动编辑
- 图表(Charts)
- Html
- Iframe
- 数据面板
- 卡片列表
- 按钮(Button)
- 按钮调用示例
- 自定义组件
- 混合页面
- 概念说明
- 扩展
- 图标扩展
- 杂项
- 帮助函数
- TODO