先上完整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修改 等方法集合!的更多相关文章

  1. DataGird导出EXCEL的几个方法

    DataGird导出EXCEL的几个方法(WebControl) using System;using System.Data;using System.Text;using System.Web;u ...

  2. 传参导出Excel表乱码问题解决方法

    业务场景 先描述一下业务场景,要实现的功能是通过搜索框填写参数,然后点击按钮搜索数据,将搜索框的查询参数获取,附加在链接后面,调导Excel表接口,然后实现导出Excel功能.其实做导Excel表功能 ...

  3. .NET导出Excel的四种方法及评测

    .NET导出Excel的四种方法及评测 导出Excel是.NET的常见需求,开源社区.市场上,都提供了不少各式各样的Excel操作相关包.本文,我将使用NPOI.EPPlus.OpenXML.Aspo ...

  4. [转帖].NET导出Excel的四种方法及评测

    .NET导出Excel的四种方法及评测 https://www.cnblogs.com/sdflysha/p/20190824-dotnet-excel-compare.html 导出Excel是.N ...

  5. [ExtJS5学习笔记]第三十四节 sencha extjs 5 grid表格之java后台导出excel

    继上次使用js前端导出excel之后,还有一个主要大家比较关注的是后台实现导出excel,因为本人开发使用的java所以这里使用apache的开源项目poi进行后台excel的导出. 本文目录 本文目 ...

  6. Asp.net导出Excel(HTML输出方法)

    主要思路: 实例化Gridview,将值绑定后输出...(用烂了的方法) 贴上核心代码: public static void ExportToExcel(DataTable dataList, st ...

  7. 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; ...

  8. HTML用JS导出Excel的五种方法

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  9. Asp.net导出Excel乱码的解决方法

    通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Enc ...

随机推荐

  1. pcap的安装与配置

    1.打开网址:www.tcpdump.org/ 下载 libpcap-1.0.0.tar.gz (512.0KB) 软件包,通过命令 tar zxvf libpcap-1.0.0.tar.gz 解压文 ...

  2. SQL中 ALL 和 ANY 区别的

    在select中我们可能会认为all和any应该表达的意思差不多.其实他们的意思完全不一样: all: 是将后面的内容看成一个整体,如: >all (select age from studen ...

  3. 第199天:js---扩充内置对象功能总结

    一.数组 1.删除数组中指定索引的数据 /** 删除数组中指定索引的数据 **/ Array.prototype.deleteAt = function (index) { if (index < ...

  4. POJ3378_Crazy Thairs

    这个题目很有意思,也是一个很好的题目,涉及的知识点比较广,要求较高. 题目是这样的,给定你一个n个数的数列,问你有多少个长度为5的上升序列. 首先看到有50000,我们就知道肯定不会是DP.(但是不知 ...

  5. 按位与&、按位或|、按位异或^

    与1进行位与&运算,值保持不变: 与0进行位与&运算,值清0: 按位与&常用于将整型变量中某些位清0,而其他位保持不变. 与1进行位或|运算,值置1: 与0进行位或|运算,值保 ...

  6. Sum of Consecutive Integers LightOJ - 1278(推公式 数学思维)

    原文地址:https://blog.csdn.net/qq_37632935/article/details/79465213 给你一个数n(n<=10^14),然后问n能用几个连续的数表示; ...

  7. Qt 事件处理机制

    Qt 事件处理机制 因为这篇文章写得特别好,将Qt的事件处理机制能够阐述的清晰有条理,并且便于学习.于是就装载过来了(本文做了排版,并删减了一些冗余的东西,希望原主勿怪),以供学习之用. 简介 在Qt ...

  8. 如何在vi中设置tab的长度

    在使用vi写python时(其实,不管用什么写python程序时,都要注意),首先要将Tab键的长度设为4,因为使用python编程时,我们是通过缩进来实现作用域的,所以要统一Tab键的长度.具体方法 ...

  9. 洛谷 P4240 毒瘤之神的考验 解题报告

    P4240 毒瘤之神的考验 题目背景 \(\tt{Salamander}\)的家门口是一条长长的公路. 又是一年春天将至,\(\tt{Salamander}\)发现路边长出了一排毒瘤! \(\tt{S ...

  10. SCOI2014极水的题解- -

    话说SCOI都考了1个月了,终于拿出决心把题解补完了,但都说了是极水的题解,大家就看着玩吧- - DAY1 T1:目标是找最长不降子序列,先就有一个比较显然的结论,就是假如我们要拔高区间[L, R], ...