MVC js动态生成from提交数据然后生成文件下载
前台: 点击触发下面事件
var turnForm = document.createElement("form");
//一定要加入到body中!!
document.body.appendChild(turnForm);
turnForm.method = 'post';
turnForm.action = 'GetCSV';
turnForm.target = '_blank';
//创建隐藏表单
var newElement = document.createElement("input");
newElement.setAttribute("name", "csvFrom");
newElement.setAttribute("type", "hidden");
newElement.setAttribute("value", JSON.stringify(saveSiteArray));
turnForm.appendChild(newElement);
turnForm.submit();
后台接收:
public ActionResult GetCSV(FormCollection form)
{
try
{
List<AspSiteList> urlList = JsonToObj(form["csvFrom"], typeof(List<AspSiteList>)) as List<AspSiteList>;
List<string> newUrlList = new List<string>();
foreach (var item in urlList)
{
string newUrl = item.ClientId + " " + item.UneiUserName + " " + item.AsId + " " + item.AsNm + " " + item.Url;
newUrlList.Add(newUrl);
}
string newString = string.Join("\r\n", newUrlList);
Encoding encoder = Encoding.UTF8;
byte[] bytes = encoder.GetBytes(newString);
Response.Charset = "UTF-8";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode("demo.csv"));
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
return new EmptyResult();
}
catch (Exception)
{
throw;
}
}
相关文章
- Fabric.js 使用纯色遮挡画布(前景色)
- yui compressor php,通过yuicompressor-2.4.7压缩css或js的php应用文件
- js下一页_不解压查看gz文件
- JS_SDK实现网站应用QQ登录功能-QQ互联(源码版)
- IIS7下js文件启用Gzip后却不压缩怎么解决?
- JS元素节点及其常用属性和方法
- 创建JS文件:在Linux下实现自动化任务(linux创建js文件)
- 使用JS在网页中连接Oracle数据库(js网页链接oracle)
- 数据JS技术实现实时获取Oracle数据(js实时获取oracle)
- js使用对象直接量创建对象的代码
- 利用js对象弹出一个层
- 用JS实现一个页面多个css样式实现
- 测试你的JS的掌握程度的代码
- js返回时间戳所对应的具体时间
- 为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
- Javascript中定义方法的另类写法(批量定义js对象的方法)
- 远离JS灾难css灾难之js私有函数和css选择器作为容器
- ie8.0下显示本地图片的js实现代码img.src
- js文件缓存之版本管理详解
- HTMLColorPicker(js拾色器效果)
- 判断文件是否正在被使用的JS代码
- 结合JQ1.9通过js正则判断各种浏览器版本的方法
- js文件Cookie存取值示例代码
- 用JS在浏览器中创建下载文件
- node.js开发中使用NodeSupervisor实现监测文件修改并自动重启应用
- php实现压缩多个CSS与JS文件的方法
- 一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
- node.js中的fs.lchmodSync方法使用说明
- node.js中的fs.chown方法使用说明
- Js使用WScript.Shell对象执行.bat文件和cmd命令
- Node.js文件操作详解