前端导出excel文件

页面定义:
<div style="display:none;">
    <a href="javascript:void(0);" id="exportExcel">ExportExcel</a>
    <table role="excel_table" id="excel_table" style="display:none;">

    </table>
</div>

js代码:

 exportExcel :function(){
	        	var data = temperature.$illuminationDatagrid.datagrid("getData");
	        	if(data.total == 0){
	        		 $.messager.alert("温馨提示","暂无数据可导出,请先查询数据!","info");
	        	}else{
	        		 $.messager.confirm("温馨提示","确认导出?",function(r){
	        			 if(r){
	        				 var timeStatistics = temperature.$timeStatistics.combobox("getValue"),
	        				 columnFields = temperature.$illuminationDatagrid.datagrid("getColumnFields"),
	        				 hide0 = ["avgSSH"],
	        				 hide1 = ["sSH"],
	        				 columnField = [];
	        				 //移除字段
	        				 if(timeStatistics == 0){
	        					 columnField = hide0;
	        				 }else{
	        					 columnField = hide1;
	        				 }
	        				 for(var i = 0 ; i < columnField.length ; i++){
	        					 if(columnFields.indexOf(columnField[i]) > -1){
	        						 columnFields.splice(columnFields.indexOf(columnField[i]),1);
	        					 }
	        				 }
	        				//获取title
	                         var colName=[];
	                         for( i = 0 ; i < columnFields.length ; i++){
	                             var col = temperature.$illuminationDatagrid.datagrid( "getColumnOption" , columnFields[i] );
	                             colName.push(col.title);//把TITLEPUSH到数组里去
	                         }
	                         
	                         //渲染虚拟的table
	                         var talbleHtml = [],$excelTable = $('table[role="excel_table"]'),sortFields = [];
	                         $excelTable.html("");

	                         talbleHtml.push('<tr>');
	                         for(var i = 0 ;i < colName.length ; i++){
	                             talbleHtml.push('<td>' + colName[i] + '</td>');
	                         }
	                         talbleHtml.push('</tr>');
	                        console.log(data);
	                         //加载数据
	                         for(var i = 0 ; i < data.rows.length ; i++){
	                        	 
	                        	 talbleHtml.push('<tr>');
	                             var rowObject = data.rows[i];//需要遍历的数据集合数组
	                             for(var j = 0 ; j < columnFields.length ; j++){
	                            	 for(var field in rowObject){
	                            		 if(field == columnFields[j]){
	                            			 if(field == "datetime"){
	                                             talbleHtml.push('<td class="excel_td_null">' + new Date(rowObject[field]).format("yyyy-MM-dd hh:mm:ss") + '</td>');
	                            			 }else{
	                                             talbleHtml.push('<td class="excel_td_null">' + rowObject[field] + '</td>');
	                            			 }
	                            		 }
	                            	 }
	                             }
	                             talbleHtml.push('</tr>');
	                         }
	                         $excelTable.append(talbleHtml.join(""));
	                       //删除为null的数据
	                         $excelTable.find(".excel_td_null").each(function(i,item){
	                             var context = $(this).html();
	                             if(context == "null"){
	                                 $(this).html("");
	                             }
	                         });
	                         tableToExcel("excel_table","光照统计面板");
	        			 }
	        		 })
	        	}
	        }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值