海豚php表格,表格选取(1.4.3+) · DolphinPHP1.5.0完全开发手册-基于ThinkPHP5.1.41LTS的快速开发框架 · 看云...
## addSelectTable('name值', '标题', '提示', '表格列头' , '表格数据', '选择内容的url'])
标识符:`selectTable`
>[info]1.4.3或更高版本支持。
>[danger] **注意:该功能仅1.4.3版本以上,并且授权版用户才有,普通版没有该功能**。如果您是授权版用户,请登录官网后,在补丁下载页面下载相应补丁。
| 参数 | 含义 | 类型 |
| --- | --- | --- |
| name | name值 | string |
| title | 标题 | string |
| tips | 提示 | string |
| columns | 表格列头 | array |
| data | 表格数据 | array |
| url | 选择内容的url | string |
```
$columns = [
'id' => 'ID',
'username' => '用户名',
'nickname' => '昵称',
];
// 使用ZBuilder快速创建表单
return ZBuilder::make('form')
->addFormItems([ // 批量添加表单项
['selectTable', 'test', '测试', '', $columns],
])
->fetch();
```
效果:
![](https://img.kancloud.cn/64/7e/647e51230ef8f37b7f637b39f852f976_1021x174.png)
目前还没有任何数据,点击“选择测试”按钮可打开弹窗选取表格数据,但必须先设置url。
```
$columns = [
'id' => 'ID',
'username' => '用户名',
'nickname' => '昵称',
];
// 使用ZBuilder快速创建表单
return ZBuilder::make('form')
->addFormItems([ // 批量添加表单项
['selectTable', 'test', '测试', '', $columns, [], url('ajax/getUserList')],
])
->fetch();
```
为避免系统检测节点权限,这里我将代码写在ajax控制器,ajax控制没有继承admin类,所以不会检测节点权限。当然,也可以写在当前控制器,记得在节点管理添加对应的节点即可。
getUserList()方法用ZBuilder创建表格即可。
```
public function getUserList()
{
$data_list = Db::name('admin_user')->paginate();
return ZBuilder::make('table')
->addColumns([
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称']
])
->setRowList($data_list)
->fetch();
}
```
这时候点击“选择测试”按钮会弹出显示用户列表。
![](https://img.kancloud.cn/49/b4/49b45614f11323ef4d6a650d3364d587_1171x229.png)
>[danger]这里有个地方要注意,1.getUserList()方法创建表格显示的列要和$columns定义的一致,包括列数和位置都要一致。
接下来,需要给表格添加一个顶部按钮,用于选取数据。
```
public function getUserList()
{
$data_list = Db::name('admin_user')->paginate();
return ZBuilder::make('table')
->addTopButton('select', [
'title' => '确定',
'icon' => 'fa fa-check',
'class' => 'btn btn-primary',
'id' => 'js-confirm',
'data-name' => 'test'
])
->addColumns([
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称']
])
->setRowList($data_list)
->fetch();
}
```
添加的顶部按钮,需要添加id为“`js-confirm`”,并且定义data-name为创建selectTable表单项时的name值,比如上面添加的是
```
['selectTable', 'test', '测试', '', $columns, [], url('ajax/getUserList')],
```
所以按钮需要添加`data-name=>'test'`
到这里,还需要添加一个js文件
```
public function getUserList()
{
$data_list = Db::name('admin_user')->paginate();
return ZBuilder::make('table')
->addTopButton('select', [
'title' => '确定',
'icon' => 'fa fa-check',
'class' => 'btn btn-primary',
'id' => 'js-confirm',
'data-name' => 'test'
])
->addColumns([
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称']
])
->setRowList($data_list)
->js('../extend/form/selectTable/selectTable')
->fetch();
}
```
这时候,点击“选择测试”按钮,弹窗显示列表,勾选后,点击“确定”即可。
![](https://img.kancloud.cn/81/a6/81a685abd7ee718992501380139025ca_1184x253.png)
![](https://img.kancloud.cn/c4/5b/c45bda5b4670215820ca265b5a6d16e2_1026x190.png)
>[info]因为getUserList方法用ZBuilder创建的,所以你可以使用筛选,排序等等功能。
```
public function getUserList()
{
$map = $this->getMap();
$order = $this->getOrder();
$data_list = Db::name('admin_user')->where($map)->order($order)->paginate();
return ZBuilder::make('table')
->addTopButton('select', [
'title' => '确定',
'icon' => 'fa fa-check',
'class' => 'btn btn-primary',
'id' => 'js-confirm',
'data-name' => 'test'
])
->addColumns([
['id', 'ID'],
['username', '用户名'],
['nickname', '昵称']
])
->setSearch('username,nickname')
->addOrder('username,nickname')
->setRowList($data_list)
->js('../extend/form/selectTable/selectTable')
->fetch();
}
```
![](https://img.kancloud.cn/20/b5/20b53707da14b59d11294875f84e3b98_1179x253.png)
选取后,会将对应的值回传到父窗口,提交表单,会自动将所选值发送给服务器,接收的是一个数组,具体可以自己打印`$this->request->post();`查看
>[danger]注意,选取的数据有可能重复,比如选取了两次一样的数据
![](https://img.kancloud.cn/fd/63/fd63d82dbbb23b66381e5d511d5b30a7_1037x217.png)
服务器会接收到两个id为1的数据,这里需要开发者自行过滤,比如:
```
$post = $this->request->post();
$post['test'] = array_unique($post);
```
海豚php表格,表格选取(1.4.3+) · DolphinPHP1.5.0完全开发手册-基于ThinkPHP5.1.41LTS的快速开发框架 · 看云...相关推荐
- 海豚php 授权价格,数据授权(1.3.2+) · DolphinPHP1.5.0完全开发手册-基于ThinkPHP5.1.41LTS的快速开发框架 · 看云...
>[info]本章节仅适用于1.3.2版本以上 从`1.3.2`版本开始,数据授权修改为分模块设置,模块内可分组. ![](https://box.kancloud.cn/06c277f6954 ...
- 海豚php完全开发手册,DolphinPHP1.3.0完全开发手册-基于ThinkPHP5.0.20的快速开发框架-05221135...
目 录 序言 环境搭建 下载及安装 目录结构 快速构建器(ZBuilder) 表单(form) 设置页面标题 设置页提示信息 设置表单提交地址 隐藏按钮 添加按钮 设置按钮标题 添加表单项 复选 单选 ...
- 海豚php分页问题,设置分页-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
setPages("分页数据") 分页功能需要用到ThinkPHP自带的paginate()方法. // 读取用户数据 $data_list = Db::name("ad ...
- php设置数据库名,设置数据库表名-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
setTableName("数据库表名") 版本更新内容1.0.7支持使用模型 默认情况下,批量操作或者右侧的启用.禁用,其他快捷操作会去修改"当前模块名_当前控制器名& ...
- 海豚php添加一行,添加表单项通用方法-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
除了可以用不同的方法来添加表单项外,DolphinPHP还为大家提供两个通用方法. 添加单个表单项 addFormItem() 比如创建一个表单,一般情况下可能这么写 return ZBuilder: ...
- php设置表单项,直接设置表单项-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
setFormItems("表单项数据") 与addFormItems方法作用相同,也是一次性添加多个表单项,不同之处在于,setFormItems方法需要写上参数名,但不要求顺序 ...
- 海豚php框架论坛,单选-海豚PHP1.0.6完全开发手册-基于ThinkPHP5.0.10的快速开发框架...
addRadio("name值", "标题", "提示", "数据项", "默认值" [, &quo ...
- 新点软件怎么导入清单_表格软件excel怎样导入数据 | 新点软件怎么导入excel清单表格 表格有什么要求???...
新点软件怎么导入excel清单表格 表格有什么要求??? 没有特别的要求. 导入EXCEL实要引入POI包,这是专门操excel的 poi 提供的只是对应的excel操作方法,要完成一个任务,自己想办 ...
- JSON格式化 动态生成表格 表格转置 行列转换 Excel导出
先看效果 初始化: JSON格式化 : 生成表格-方式1 : 生成表格-方式2 : Excel导出 需要行求和.列求和功能的查看 JSON格式化 动态生成表格 表格转置 行列转换 Excel导出 行求 ...
最新文章
- 小程序前端性能测试_如何提高前端应用程序的性能
- JavaScript 字符串转数字
- Linux系统(Centos)下安装nodejs并配置环境
- leetCode 110. Balanced Binary Tree 平衡二叉树
- c++ vector 赋值_数据分析:R篇 | 变量赋值、计算、画图、基本检验
- ubuntu使用问题与解决记录[持续更新]
- CreateProcess()无法启动应用?
- 浪涌保护器ant120_菲尼克斯浪涌保护器
- 计算机设置从光盘启动怎么办,[光盘启动]BIOS设置从光盘光驱启动教程
- 京东登录页面html代码_如何制作一个简单的HTML登录页面(附代码)
- 搭讪达人这样和女生发短信
- 求数组中间值的三种方法
- 播放器可以完成:开机自动打开指定网页,自动运行浏览器打开指定的网页。
- 计算机应用基础(本)第4章答案,计算机应用基础第4章习题答案(江西省三校生).doc...
- 网络虚拟(包括overlay、underlay介绍)
- 懒惰(Laziness)、急躁(Impatience)和傲慢(Hubris)
- 如何在MSDN上下载操作系统
- 小程序蓝牙获取电子秤的值【uni-app】
- INSTALL_FAILED_NO_MATCHING_ABIS 安装包安装失败,返回代码res=-113的解决办法 B站弹幕
- 京东2017校园招聘数据与算法方向笔试题
热门文章
- 地图图元的闪烁效果制作
- 批处理 java环境_java环境配置简单批处理方法一键OK
- java final内存机制_Java中的内存处理机制和final、static、final static总结
- windows下dos窗口实现持续ping显示时间保存至日志
- spring AOP 之一:spring AOP功能介绍
- MySQL与MongoDB的区别
- .Net 中的封装知识点
- c语言mergesort 参数,归并排序C语言兑现MergeSort
- idea_取消自动import .*
- Spring-Boot——Cache