学习日记7、mvc +easyui datagrid excel上传
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
///
///
/// 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上传的更多相关文章
- 学习日记6、easyui datagrid 新增一行,编辑行,结束编辑和删除行操作记录
1.新增一行并进入编辑状态 var index=$('#Numbers').datagrid('appendRow', { CardInformation: '开户行', CardNumber: '银 ...
- excel上传和下载
需要注意的地方: 1.js构造表单并提交 2.js中文传参encodeURI(encodeURI("中文")),action接收并转换value = URLDecoder.deco ...
- 从.Net到Java学习第十篇——Spring Boot文件上传和下载
从.Net到Java学习系列目录 图片上传 Spring Boot中的文件上传就是Spring MVC中的文件上传,将其集成进来了. 在模板目录创建一个新的页面 profile/uploadPage. ...
- MVC中的文件上传-小结
web开发中,文件的上传是非常基本功能之一. 在asp.net中,通常做法是利用webservice 来接收文件请求,这样做的好处就是全站有了一个统一的文件上传接口,并且根据网站的实际情况,可以将we ...
- [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传
原文 [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传 Fine Uploader(http://fineuploader.com/)是一个实现 ajax 上传文件 ...
- MVC应用程序显示上传的图片
MVC应用程序显示上传的图片 前两篇<MVC应用程序实现上传文件>http://www.cnblogs.com/insus/p/3590907.html和<MVC应用程序实现上传文件 ...
- IT轮子系列(六)——Excel上传与解析,一套代码解决所有Excel业务上传,你Get到了吗
前言 在日常开发当中,excel的上传与解析是很常见的.根据业务不同,解析的数据模型也都不一样.不同的数据模型也就需要不同的校验逻辑,这往往需要写多套的代码进行字段的检验,如必填项,数据格式.为了避免 ...
- EXCEL上传POI
Java SpringMVC POI上传excel并读取文件内容 2017年11月27日 15:26:56 强人锁男. 阅读数:15329 用的SSM框架,所需要的jar包如图所示:,链接地址:j ...
- 关于我使用spring mvc框架做文件上传时遇到的问题
非常感谢作者 原文:https://blog.csdn.net/lingirl/article/details/1714806 昨天尝试着用spring mvc框架做文件上传,犯了挺多不该犯的毛病问题 ...
随机推荐
- laravel 设置自定义 Validator
转自:https://learnku.com/docs/laravel/5.4/validation/1234#custom-validation-rules 自定义验证规则 Laravel 提供了许 ...
- Foxit_PDF_Editor(特别版)-PDF文档编辑器 V2.21 V3.1
完全反编辑PDF,需要下载. 链接:https://pan.baidu.com/s/1QLIr_2O-WDncVm9veW8JSw 提取码:zf2a
- Creat-React-Native-App 之StackNavigator之踩坑记录
Creat-React-Native-App简称CRNA. 在我开始入门RN时fb已经推出和Expo联合开发用于快速创建React Native应用的工具: Create-React-Native-A ...
- 转载Django 500,404,400错误修改优化
转载:https://blog.csdn.net/qq_38038143/article/details/80105653 404错误:page not found视图 500错误:server er ...
- [Git] 011 checkout 与 reset 命令的补充
1. git checkout -- <file> 的示意 2. "checkout" 的补充 2.1 git checkout <branch_name> ...
- MongoDB 基本操作(增改删)
1.插入数据 和关系型数据库一样,增加数据记录可以使用insert语句,这是很简单的. 当插入数据时,如果此集合不存在,则MongoDB系统会自动创建一个集合,即不需要刻意预先创建集合 每次插入数据时 ...
- JavaScript 的继承与多态
本文先对es6发布之前javascript各种继承实现方式进行深入的分析比较,然后再介绍es6中对类继承的支持以及优缺点讨论.最后介绍了javascript面向对象编程中很少被涉及的“多态”,并提供了 ...
- vmware 中标麒麟系统安装VM tools
打开虚拟机系统,选择菜单虚拟机->安装VMware TOOLs,下载后找到文件. 我的文件名称是 VMwareTools-10.2.5-8068393.tar.gz, 在终端里输入:tar xv ...
- 1.go语言目录结构
[root@localhost ~]# ll /go/ total drwxr-xr-x. root root May : api -rw-r--r--. root root May : AUTHOR ...
- python 迭代器和生成器的区别
迭代器(iterator)是一个实现了迭代器协议的对象,python的一些内置数据类型(列表,数组,字符串,字典等)都可以通过for语句进行迭代,我们也可以自己创建一个容器,实现了迭代器协议,可以通过 ...