js 下载excel

it2025-04-06  10

 

 

前台  js

<script> //导出 function Export() { //传递参数 var data="paramer"; var config = $.extend(true, { method: 'post' }, "/SuppUpd/SetDPGSL"); var $iframe = $('<iframe id="down-file-iframe" />'); var $form = $('<form target="down-file-iframe" method="' + config.method + '" />'); $form.attr('action', "/SuppUpd/SetDPGSL"); $form.append('<input type="hidden" name="datalist" SN=\'' + data + '\' />'); $iframe.append($form); $(document.body).append($iframe); $form[0].submit(); $iframe.remove(); } </script>

  

后台 Controller

/// <summary> /// 下载供应商送货单,并将供应商代码写入模板 /// </summary> /// <param name="SN"></param> /// <returns></returns> public JsonResult SetDPGSL(string SN) { try { //npoi 导出excel string mubUrl = @"\App_Data\SuppUpd.xls"; new ExcelHelper().ExportGetSuppUpdModel(LoginUser.UserID, mubUrl, HttpContext, "送货信息模板" + ".xls"); var result = new { result = 1, Msg = "下载成功" }; var msg = "供应商送货单模板下载:" + "下载成功:" + LoginUser.UserID; SetAddLog(ServicePageSMSE.SuppUpd, OperateType.imp, msg); return Json(result); } catch (Exception) { var result = new { result = 0, Msg = "下载失败" }; return Json(result); } }

  

具体执行方法

/// <summary> /// 下载供应商送货单,并将供应商代码写入模板固定位置 /// </summary> /// <param name="DPG1S1">供应商代码</param> /// <param name="mubUrl">模板地址</param> /// <param name="context"></param> /// <param name="fileName">保存文件名称</param> public void ExportGetSuppUpdModel(string DPG1S1, string mubUrl, HttpContextBase context, string fileName) { string road = context.Server.MapPath(mubUrl); FileInfo s = new FileInfo(road); using (FileStream stream = new FileStream(road, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { #region Excel样式 HSSFWorkbook workbook = new HSSFWorkbook(stream); HSSFSheet sheet = (HSSFSheet)workbook.GetSheetAt(0); workbook.SetSheetName(0, "模板"); ICellStyle style = workbook.CreateCellStyle(); NPOI.SS.UserModel.IFont font = workbook.CreateFont(); font.IsBold = true; font.FontName = "宋体"; font.FontHeightInPoints = 13; style.WrapText = true; style.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin; style.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin; style.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin; style.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin; style.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;//居中 style.VerticalAlignment = VerticalAlignment.Center;//垂直居中 style.SetFont(font);//HEAD 样式 #endregion IRow row; row = sheet.GetRow(0); row.GetCell(8).SetCellValue(DPG1S1); using (MemoryStream ms = new MemoryStream()) { workbook.Write(ms); ms.Position = 0; if (context.Request.Browser.Browser == "IE") fileName = HttpUtility.UrlEncode(fileName); context.Response.AddHeader("Content-Disposition", "attachment;fileName=" + fileName); context.Response.BinaryWrite(ms.ToArray()); } } }

  

 

转载于:https://www.cnblogs.com/lhlong/p/6874104.html

相关资源:js前端下载并编辑Excel样式
最新回复(0)