1、首先获取datagrid所有行的数据
var rows = $("#List").datagrid("getRows");
2、进行数据转换转化成JSON格式
var bodyData = JSON.stringify(rows);
//替换中文标题
var a = bodyData.replace(/Cst_CustomerCoding/, "客户编码").replace(/CustomerName/, "客户名称")
.replace(/IDNumber/, "客户身份证号").replace(/Sex/, "性别").replace(/Birthday/, "生日").replace(/Phone/, "电话")
.replace(/EmergencyContact/, "紧急联系人").replace(/EmergencyCall/, "紧急联系人电话").replace(/Address/, "地址")
.replace(/PersonnelId/, "经办人").replace(/EnteroneId/, "录入人");
var postData = { data: a };

我这个地方是把标题改成对应的汉字标题,然后利用Ajax向后台传输数据
$.ajax({
cache: false,
url: '@Url.Action("ExportExcel")',
type:'post',
data: postData,
success: function (data) {
$.messageBoxWxc("提示", data.message);
},
error: function () {
alert("网络出错!")
}
})
然后利用一些帮助库就轻松地完成easyui datagrid导出Excel
///

/// 导出Excel
///

/// json数据
///
[HttpPost]
public JsonResult ExportExcel()
{
string json = Request.Params["data"];
try
{
DataTable dt = ExcelHelper.JsonToDataTable(json);
//桌面路径
string pathDestop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
ExcelHelper.GridToExcelByNPOI(dt, pathDestop + "\\" + "客户信息-" + DateTime.Now.ToString("yyyy-MM-dd") + "导出" + ".xls");
LogHandler.WriteServiceLog(UserState.GetUserState().Id, "导出Excel", Suggestion.Success, Suggestion.Export, "Export");
return Json(JsonHandler.CreateMessage(1, Suggestion.ExportSuccess),JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
ExceptionHander.WriteException(ex);
LogHandler.WriteServiceLog(UserState.GetUserState().Id, "导出Excel", Suggestion.Fail, Suggestion.Export, "Export");
return Json(JsonHandler.CreateMessage(0, Suggestion.ExportFail),JsonRequestBehavior.AllowGet);
}
}
GridToExcelByNPOI这个类需要通过GuGet安装NOPI

通过这些类库其实自己写的代码也没有多少,接下来我回去学习自己定制的Excel输出,等我学会,会接着分享的,
这些类库网上应该都有,如果搜不找的,可以留言

学习日记7、mvc +easyui datagrid excel上传的更多相关文章

  1. 学习日记6、easyui datagrid 新增一行,编辑行,结束编辑和删除行操作记录

    1.新增一行并进入编辑状态 var index=$('#Numbers').datagrid('appendRow', { CardInformation: '开户行', CardNumber: '银 ...

  2. excel上传和下载

    需要注意的地方: 1.js构造表单并提交 2.js中文传参encodeURI(encodeURI("中文")),action接收并转换value = URLDecoder.deco ...

  3. 从.Net到Java学习第十篇——Spring Boot文件上传和下载

    从.Net到Java学习系列目录 图片上传 Spring Boot中的文件上传就是Spring MVC中的文件上传,将其集成进来了. 在模板目录创建一个新的页面 profile/uploadPage. ...

  4. MVC中的文件上传-小结

    web开发中,文件的上传是非常基本功能之一. 在asp.net中,通常做法是利用webservice 来接收文件请求,这样做的好处就是全站有了一个统一的文件上传接口,并且根据网站的实际情况,可以将we ...

  5. [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传

    原文 [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传 Fine Uploader(http://fineuploader.com/)是一个实现 ajax 上传文件 ...

  6. MVC应用程序显示上传的图片

    MVC应用程序显示上传的图片 前两篇<MVC应用程序实现上传文件>http://www.cnblogs.com/insus/p/3590907.html和<MVC应用程序实现上传文件 ...

  7. IT轮子系列(六)——Excel上传与解析,一套代码解决所有Excel业务上传,你Get到了吗

    前言 在日常开发当中,excel的上传与解析是很常见的.根据业务不同,解析的数据模型也都不一样.不同的数据模型也就需要不同的校验逻辑,这往往需要写多套的代码进行字段的检验,如必填项,数据格式.为了避免 ...

  8. EXCEL上传POI

    Java SpringMVC POI上传excel并读取文件内容 2017年11月27日 15:26:56 强人锁男. 阅读数:15329   用的SSM框架,所需要的jar包如图所示:,链接地址:j ...

  9. 关于我使用spring mvc框架做文件上传时遇到的问题

    非常感谢作者 原文:https://blog.csdn.net/lingirl/article/details/1714806 昨天尝试着用spring mvc框架做文件上传,犯了挺多不该犯的毛病问题 ...

随机推荐

  1. 多线程09-Mutex

        )))                 {                     Console.WriteLine("second instance is runing" ...

  2. Java-Lambda表达式第二篇认识Lambda表达式

    接上面的方法引用和构造器引用: 3>引用某类对象的实例方法 @FunctionalInterface public interface Cut{ String cut(String str,in ...

  3. <每日一题> Day4:CodeForces-1042A.Benches(二分 + 排序)

    题目链接 参考代码: /* 排序 + 每次取小 #include <iostream> #include <algorithm> using namespace std; co ...

  4. vscode怎么修改颜色主题里的某种颜色

    我习惯用深色主题, 齿轮--->颜色主题 ---->monokai是我的菜. 比较精神,又不刺眼. 但是这个主题的注释的颜色太浅了. 几乎和背景重合. 注释很重要, 能体现和记录自己的代码 ...

  5. Redis的持久化存储

    Redis的持久化 Redis 是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题, Redis 提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. RD ...

  6. SpringMVC处理器拦截器 Interceptor

    拦截器概念 Java 里的拦截器是动态拦截action调用的对象.它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种 ...

  7. P1455 搭配购买 (并查集+01背包)

    [题目描述] 明天就是母亲节了,电脑组的小朋友们在忙碌的课业之余挖空心思想着该送什么礼物来表达自己的心意呢?听说在某个网站上有卖云朵的,小朋友们决定一同前往去看看这种神奇的商品,这个店里有n朵云,云朵 ...

  8. Asp.Net MVC 5使用Identity之简单的注册和登陆

    由于.Net MVC 5登陆和注册方式有很多种,但是Identity方式去实现或许会更简单更容易理解 首先新建一个项目 其次如下选择Empty和MVC的选项 然后打开NuGet包管理器分别安装几个包 ...

  9. 初步了解oracle

    1. Oracle的创始人 2. Oracle版本含义 3. Oracle安装:用户种类及初始密码 在oracle10g\11g中默认scott被锁定. 4. Oracle数据库的启动 a) 启动两个 ...

  10. 2019-8-31-dotnet-core-集成到-Mattermost-聊天工具

    title author date CreateTime categories dotnet core 集成到 Mattermost 聊天工具 lindexi 2019-08-31 16:55:58 ...