.net mvc4 + ajaxfileupload.js 解决IE浏览器中弹出下载对话框问题
摘要:每个人遇到的问题都不一样,在网上找了一大圈都没有解决到我的问题!因为我的环境如标题所示,解决了这个问题。
主要问题:在于响应头的设置
Controller:
[HttpPost] public ContentResult UploadFile(string user = WinTabConst.Space, int type = ConfigConst.Zero, string imgType = WinTabConst.Space, int objId = ConfigConst.Zero, DateTime? createDateTime = null) { HttpPostedFileBase imgFile = Request.Files["imgFile"]; AttachmentBLL attachmentBll; if (!string.IsNullOrEmpty(user)) attachmentBll = new AttachmentBLL(user); else attachmentBll = new AttachmentBLL(); int userId = 0; users userModel = attachmentBll.CurUser; if (user != null) userId = userModel.UserID; return Content(JavascriptHelper.JsonSerializer.Serialize(attachmentBll.UploadFile(true, "", imgFile, type, imgType, objId, userId, createDateTime))); }
$.ajaxFileUpload( { url: "/Companies/attachment/UploadFile", data: { "objId": objId, "createDateTime": createDateTime, "dir": "", "type": "2", "userid": UserID, "user": $.cookie('LoginInfo') }, type: "post", secureuri: false, dataType: "text", fileElementId: "imgFile", success: function (data) { if (data != null && data == "") {//这个判断是因为当时格式为 json,IE接收到的 data为 "",但是图上又是传成功的问题 $(".uploadImg").hide(); $(".mask").hide(); }else if (data != null && data.error == 0) {//我的正确执行的方法 $(".uploadImg").hide(); $(".mask").hide(); } else { AlertAlert("上传失败!"); } }, error: function (e) { $.messager.alert("提示", "操作出现错误!"); } } );
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。