kartik\grid\GridView 合计,多选,导出excel,header修改 等方法集合!
先上完整demo
具体的以后再说
<?php //use yii\web\View;
use kartik\grid\GridView;
use yii\bootstrap\Html;
use backend\helps\ArrayHelper;
use yii\helpers\Url;
use kartik\grid\SerialColumn;
echo GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'pjax'=>true, // 使用pjax
'striped' => false,
'hover' => true,
'showPageSummary' => true,
'panel' => [
'heading'=>false,//不要了
'before'=>'<div style="margin-top:8px">{summary}</div>',//放在before中,前面的div主要是想让它好看
],
'toolbar'=> [
['content'=>
Html::a('批量下一步', "javascript:void(0)", ['data-pjax'=>0, 'class'=>'btn btn-success selectColumn', 'title'=>"批量下一步"]).
Html::a('<i class="glyphicon glyphicon-repeat"></i>', "javascript:layer.load(1);location.reload();", ['data-pjax'=>0, 'class'=>'btn btn-default', 'title'=>"重置"])
],
'{export}',
'{toggleData}',
],
'exportConfig'=>[
GridView::EXCEL=>[
'filename' => "excel",
'showPageSummary' => true,
],
], 'columns' => [
['class' => 'kartik\grid\SerialColumn'],
['class' => 'kartik\grid\CheckboxColumn'], //需要配合自定义的gridview /**
[
'class' => '\kartik\grid\FormulaColumn',
"label" =>"共收费",
"format"=>"text",
'value' => function ($model, $key, $index, $widget) {
// $p = compact('model', 'key', 'index');
//在下面写下你的公式
return $model->price + $model->exprice;
},
'pageSummary' => true
], */
'patent_id',
'company', [
"label" => "处理部门",
'attribute' => 'department_id',
'value' => function ($data) {
$arr = ArrayHelper::get_correspond_list('get_department_list', 'id', 'name');
return @$arr[$data["patent"]->department_id];
},
'filter' => ArrayHelper::get_correspond_list('get_department_list', 'id', 'name')
], [
'attribute' => 'price',
'format' => 'text',
'value' => function ($data) {
return $data->price;
},
'pageSummary' => true //需要合计 添加该值
],
[
'attribute' => 'status',
'format' => 'html',
'value' => function ($data) {
ArrayHelper::get_patent_child_status();
return ArrayHelper::dropDown('get_patent_child_status_label', $data->status); // 如果是数组数据则为 $data['name'] ,例如,使用 SqlDataProvider 的情形。
},
'filter' => ArrayHelper::dropDown('get_patent_child_status')
],
[
'attribute' => 'edit_time',
'value' => function ($data) {
return ArrayHelper::get_date_time($data->edit_time);
},
],
[
'class' => 'kartik\grid\ActionColumn',//必须
"header" => "操作",
'template' => '{update} {delete}',
"buttons" => [ "update" => function ($url, $model, $key) {
return Html::a('<span class="glyphicon glyphicon-pencil"></span>', Url::to(['patentpay/update', 'id' => $model->id]), ['title' => '修改', 'class' => 'ahref']);
},
"delete" => function ($url, $model, $key) {
return Html::a('<span class="glyphicon glyphicon-trash"></span>', Url::to(['patentpay/delete', 'id' => $model->id]), ['title' => '删除', 'class' => 'actionDoing']);
},
], ], ]
]); ?>
kartik\grid\GridView 合计,多选,导出excel,header修改 等方法集合!的更多相关文章
- DataGird导出EXCEL的几个方法
DataGird导出EXCEL的几个方法(WebControl) using System;using System.Data;using System.Text;using System.Web;u ...
- 传参导出Excel表乱码问题解决方法
业务场景 先描述一下业务场景,要实现的功能是通过搜索框填写参数,然后点击按钮搜索数据,将搜索框的查询参数获取,附加在链接后面,调导Excel表接口,然后实现导出Excel功能.其实做导Excel表功能 ...
- .NET导出Excel的四种方法及评测
.NET导出Excel的四种方法及评测 导出Excel是.NET的常见需求,开源社区.市场上,都提供了不少各式各样的Excel操作相关包.本文,我将使用NPOI.EPPlus.OpenXML.Aspo ...
- [转帖].NET导出Excel的四种方法及评测
.NET导出Excel的四种方法及评测 https://www.cnblogs.com/sdflysha/p/20190824-dotnet-excel-compare.html 导出Excel是.N ...
- [ExtJS5学习笔记]第三十四节 sencha extjs 5 grid表格之java后台导出excel
继上次使用js前端导出excel之后,还有一个主要大家比较关注的是后台实现导出excel,因为本人开发使用的java所以这里使用apache的开源项目poi进行后台excel的导出. 本文目录 本文目 ...
- Asp.net导出Excel(HTML输出方法)
主要思路: 实例化Gridview,将值绑定后输出...(用烂了的方法) 贴上核心代码: public static void ExportToExcel(DataTable dataList, st ...
- html table表格导出excel的方法 html5 table导出Excel HTML用JS导出Excel的五种方法 html中table导出Excel 前端开发 将table内容导出到excel HTML table导出到Excel中的解决办法 js实现table导出Excel,保留table样式
先上代码 <script type="text/javascript" language="javascript"> var idTmr; ...
- HTML用JS导出Excel的五种方法
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- Asp.net导出Excel乱码的解决方法
通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Enc ...
随机推荐
- MySQL 基于lvm2的备份实战演练 (快照备份)
前言: lvm2实现热备的原理是基于lvm2的快照功能,lvm2可以实现数据集不大的情况下的热备. 实战过程如下:这里的演示是在一台Mariadb服务器上进行创建快照,将快照中的文件scp到备份服务器 ...
- Qt容器类汇总说明
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt容器类汇总说明 本文地址:http://techieliang.com/2017/ ...
- java 基础 --File
1, 创建文件 File file = new File(path); file.createNewFile(); //如果路径不存在,会抛异常 file.mkdir();//如果路径不存在,返回fa ...
- dbgrid多选日记
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin then begin DBGrid1.DataSourc ...
- 在DbGrid中,不按下Ctrl,单击鼠标如何实现多选?谢谢
解决方案 » 有了dbgrid1.options.dgmultiselect:=true;必须按下Ctrl键,才能实现多选, 修改源代码,把以下内容if Select and (ssShift i ...
- Java Servlet简介
一.了解Servlet的概念 Servlet定义 Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容.Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能.Se ...
- 【linux使用】bash shell命令行常用快捷键
移动: Ctrl + A: 移动到当前编辑的命令行首, Ctrl + E: 移动到当前编辑的命令行尾, Ctrl + F 或 ->:按字符右移(往命令行尾部方向,前移) Ctrl + B 或 & ...
- P2756 飞行员配对方案问题(网络流24题之一)
题目背景 第二次世界大战时期.. 题目描述 英国皇家空军从沦陷国征募了大量外籍飞行员.由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的2 名飞行员,其中1 名是英国飞行员,另1名是外 ...
- 【纪念】NOIP2018后记——也许是一个新的起点
如果你为了失去太阳而哭泣,那么你也将失去星星和月亮. —— 泰戈尔<飞鸟集> NOIP结束了,我挂了一道题……曾经在心中觉得怎么都不会考到的分数,就这么冷冷的出现在了我的成绩单上.的确是比 ...
- 【CF331E】Biologist(网络流,最小割)
[CF331E]Biologist(网络流,最小割) 题面 洛谷 翻译: 有一个长度为\(n\)的\(01\)串,将第\(i\)个位置变为另外一个数字的代价是\(v_i\). 有\(m\)个要求 每个 ...