先上完整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. 设计模式php篇(一)————单例模式

    话不多说,直接上代码: <?php namespace DesignPattern; /** * php设计模式之单例模式 */ class SingleInstance { private s ...

  2. 【转载】mysql建表date类型不能设置默认值

    如题,mysql建表date类型的不能设置一个默认值,比如我这样: CREATE TABLE `new_table` ( `biryhday` datetime NULL DEFAULT '1996- ...

  3. Linux服务器启动后只读解决办法

    今天处理一个服务器,远程死活连接不上,只好跑信息中心去看了下服务器. Linux服务器启动之后,提示: give root password for maintenance (or type cont ...

  4. Git(未完待续)

    Git的历史咱们就不多说来,我还是喜欢直白点,直接来干货吧 在Linux上安装Git 不同的系统不同的安装命令,基础的就不说来,centos直接yum就ok. 安装完成后,还需要最后一步设置,在命令行 ...

  5. Linux下修改环境变量PATH

    1.什么是环境变量(PATH) 在Linux中,在执行命令时,系统会按照PATH的设置,去每个PATH定义的路径下搜索执行文件,先搜索到的文件先执行. 我们知道查阅文件属性的指令ls 完整文件名为:/ ...

  6. Spark:一个高效的分布式计算系统--转

    原文地址:http://soft.chinabyte.com/database/431/12914931.shtml 概述 什么是Spark ◆ Spark是UC Berkeley AMP lab所开 ...

  7. bzoj3622-已经没有什么好害怕的的了

    题意 给出两个长度为 \(n\) 的数列 \(a,b\) ,\(2n\) 个数都互不相同,求有多少种对应方式使得 \(a_i>b_i\) 的个数比 \(a_i<b_i\) 的个数恰好多 \ ...

  8. presence_of_element_located与visibility_of_element_located区别

    selenium 问题:加了显性等待后,操作元素依然出错   背景: 用WebDriverWait时,一开始用的是presence_of_element_located,我对它的想法就是他就是用来等待 ...

  9. appium使用H5怎么定位元素

    允许是一个class,如果遇到有多个class,只能填写一个. 对于移动端H5元素定位采用Chromedriver的解决方案,具体操作如下: 1.手机安装Chrome浏览器 2.开启USB调试模式,并 ...

  10. 如何实现密码输入框focus状态弹出提示信息

    一.密码输入提示框样式实现 效果图如下: 源码如下: <html> <style type="text/css"> *{ padding: 0; margi ...