zoukankan      html  css  js  c++  java
  • 将表格table作为execl导出

    有时候的需求是从后台获取数据,然后将数据变成execl,进行导出,下载成execl 解决的方法是

    一,比较方便的是

    这有个插件 可以直接用 

    https://www.npmjs.com/package/xlsx 

    二,这种是自己写的一种

    1.渲染数据的模板

    <html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns="http://www.w3.org/TR/REC-html40">
    <head>
    <meta charset="utf-8" />
    <!--[if gte mso 9]>
    <xml>
    <x:ExcelWorkbook>
    <x:ExcelWorksheets>
    <x:ExcelWorksheet>
    <x:Name><%=sheetName%></x:Name>
    <x:WorksheetOptions>
    <x:DisplayGridlines/>
    </x:WorksheetOptions>
    </x:ExcelWorksheet>
    </x:ExcelWorksheets>
    </x:ExcelWorkbook>
    </xml><![endif]-->
    </head>
    <body><%=tableHTML%>
    </body>
    </html>
    

    2.点击导出execl 点击导出按钮 然后执行这个函数

    // 导出文件
    		clickExport : function(event) {
    		    var _this=this;
    		    this.renderTable(function(){
    			// 获取当前的图表类型
    			var type = 'table';
    			// sheet名称
    			var sheetName = '专利信息汇总表 ';
    			if (type == "table") {
    				_this.exportExcel(sheetName, _this.$(".execltable").find("table"), event);
    			}
    		    });	
    		},
    		// 导出为excel文件
    		exportExcel : function(sheetName, $table, event) {
    			var base64 = window.btoa(unescape(encodeURIComponent(this.tableExcelTemplate({
    				sheetName : sheetName,
    				tableHTML : $table.prop("outerHTML")
    			}))));
    			// 获取下载链接
    			var uri = 'data:application/vnd.ms-excel;base64,' + base64;
    			// 设置下载名称
    			event.target.download = sheetName + ".xls";
    			// 触发下载
    			event.target.href = uri;
    		},
    		renderTable:function(callback){
    		    var result=this.tableView.getDataExecl();
    		    this.$(".execltable").html(this.tableTemplate({
    			rows:result
    		    }));
    		    callback();
    		},
    

      

     

  • 相关阅读:
    rpc的几种服务端模型分析
    ASP.NET MVC3在Visual Studio 2010中的变化
    HTML元素的ID和Name属性的区别
    Oracle日期类操作(格式 加减乘 取毫秒)
    快速原型工具
    C#4.0新特性dynamic\可选参数、命名参数
    WCF注册Windows Service
    不要在using语句中调用WCF服务
    C# 4.0 新特性dynamic、可选参数、命名参数等
    Windows内置系统账户Local system/Network service/Local Service
  • 原文地址:https://www.cnblogs.com/GainLoss/p/7109779.html
Copyright © 2011-2022 走看看