zoukankan      html  css  js  c++  java
  • FastAdmin导出

    index.html添加

    <a href="javascript:;" class="btn btn-success btn-export {:$auth->check('user/export')?'':'hide'}" title="{:__('Export')}" id="btn-export-file"><i class="fa fa-download"></i> {:__('Export')}</a>

    注意替换上传路径

    index.js添加

    $(document).on("click", ".btn-export", function () {
      var ids = Table.api.selectedids(table);
      var page = table.bootstrapTable('getData');
      var all = table.bootstrapTable('getOptions').totalRows;
      console.log(ids.length, page.length, all);
      Layer.confirm("请选择导出的选项<form action='" + Fast.api.fixurl("user/export") + "' method='post' id='cc' target='_blank'><input type='hidden' name='ids' id='kk' value='' /><input type='hidden' name='filter' ><input type='hidden' name='op'><input type='hidden' name='search'><input type='hidden' name='columns'></form>", {
        title: '导出数据',
        btn: ["选中项(" + ids.length + "条)", "本页(" + page.length + "条)", "全部(" + all + "条)"],
          success: function (layero, index) {
            $(".layui-layer-btn a", layero).addClass("layui-layer-btn0");
              }
            , yes: function (index, layero) {
              if (ids.length > 0) {
                var form = document.getElementById('cc');
                var custmoreInput = document.getElementById('kk');
                  custmoreInput.setAttribute("value", ids.join(","));
                  form.submit(ids.join(","), layero);
                    return true;
                                }
                                return false;
                            }
                            ,
                            btn2: function (index, layero) {
                                var ids = [];
                                $.each(page, function (i, j) {
                                    ids.push(j.id);
                                });
                                if (ids.length > 0) {
                                    var form = document.getElementById('cc');
                                    var custmoreInput = document.getElementById('kk');
                                    custmoreInput.setAttribute("value", ids.join(","));
                                    form.submit(ids.join(","), layero);
                                    return true;
                                }
                                return false;
                            }
                            ,
                            btn3: function (index, layero) {
                                var form = document.getElementById('cc');
                                var custmoreInput = document.getElementById('kk');
                                custmoreInput.setAttribute("value", "all");
                                form.submit("all", layero);
                                return true;
                            }
                        })
                    });

    安装PHPExcel

    composer require phpoffice/phpexcel

    index.php导出代码

    public function export()
        {
            if ($this->request->isPost()) {
                set_time_limit(0);
                $ids = $this->request->post('ids');
    
                    $excel = new PHPExcel();
                    $excel->getProperties()
                        ->setTitle("天行科技");
    
                    $excel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true);
                    $excel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
                    $excel->getActiveSheet()->getColumnDimension('C')->setWidth(35);// 给表格添加数据
                    $worksheet = $excel->setActiveSheetIndex(0)
                        ->setCellValue('A1', '序号')
                        ->setCellValue('B1', '合同编号')
                        ->setCellValue('C1', '姓名');
    $list = $this->model->select();
    foreach ($list as $k => $val) { $k = $k + 2; $worksheet->setCellValue('A' . $k, $val['id']) ->setCellValue('B' . $k, $val['number']) ->setCellValue('C' . $k, $val['name']); } $excel->createSheet(); $title = "天行科技" . date("YmdHis"); header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="' . $title . '.xlsx"'); header('Cache-Control: max-age=0'); header('Cache-Control: max-age=1'); header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // always modified header('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header('Pragma: public'); // HTTP/1.0 $objWriter = PHPExcel_IOFactory::createWriter($excel, 'Excel2007'); $objWriter->save('php://output'); exit; return; } }

    --非原创,转载的,原博主找不到了。。。

  • 相关阅读:
    Code First 数据迁移 转
    WebAPI Post接收数据
    hbase1.2.4 API改动
    spark中RDD持久化浅析
    SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Attr_id' in 'where clause'
    宝塔忘记面板地址怎么办? 可以找到没问题的
    卸载Apache 删除已经停止的服务
    Composer 卸载
    TP5.1模型 增删改查
    打印数据库int类型的时间戳
  • 原文地址:https://www.cnblogs.com/xuanjiange/p/14545111.html
Copyright © 2011-2022 走看看