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. laravel 设置自定义 Validator

    转自:https://learnku.com/docs/laravel/5.4/validation/1234#custom-validation-rules 自定义验证规则 Laravel 提供了许 ...

  2. Foxit_PDF_Editor(特别版)-PDF文档编辑器 V2.21 V3.1

    完全反编辑PDF,需要下载. 链接:https://pan.baidu.com/s/1QLIr_2O-WDncVm9veW8JSw 提取码:zf2a

  3. Creat-React-Native-App 之StackNavigator之踩坑记录

    Creat-React-Native-App简称CRNA. 在我开始入门RN时fb已经推出和Expo联合开发用于快速创建React Native应用的工具: Create-React-Native-A ...

  4. 转载Django 500,404,400错误修改优化

    转载:https://blog.csdn.net/qq_38038143/article/details/80105653 404错误:page not found视图 500错误:server er ...

  5. [Git] 011 checkout 与 reset 命令的补充

    1. git checkout -- <file> 的示意 2. "checkout" 的补充 2.1 git checkout <branch_name> ...

  6. MongoDB 基本操作(增改删)

    1.插入数据 和关系型数据库一样,增加数据记录可以使用insert语句,这是很简单的. 当插入数据时,如果此集合不存在,则MongoDB系统会自动创建一个集合,即不需要刻意预先创建集合 每次插入数据时 ...

  7. JavaScript 的继承与多态

    本文先对es6发布之前javascript各种继承实现方式进行深入的分析比较,然后再介绍es6中对类继承的支持以及优缺点讨论.最后介绍了javascript面向对象编程中很少被涉及的“多态”,并提供了 ...

  8. vmware 中标麒麟系统安装VM tools

    打开虚拟机系统,选择菜单虚拟机->安装VMware TOOLs,下载后找到文件. 我的文件名称是 VMwareTools-10.2.5-8068393.tar.gz, 在终端里输入:tar xv ...

  9. 1.go语言目录结构

    [root@localhost ~]# ll /go/ total drwxr-xr-x. root root May : api -rw-r--r--. root root May : AUTHOR ...

  10. python 迭代器和生成器的区别

    迭代器(iterator)是一个实现了迭代器协议的对象,python的一些内置数据类型(列表,数组,字符串,字典等)都可以通过for语句进行迭代,我们也可以自己创建一个容器,实现了迭代器协议,可以通过 ...