?Asp.net mvc在接收的是JSON格式的數據,但是奇怪的是在IE中提示下載文件,其他瀏覽器中一切正常,下載后,里面的內容就是在控制器中返回的數據。代碼如下:
視圖中js代碼:
?? $("#form").ajaxSubmit({
??????????????????? type: "POST",
??????????????????? url: "/controller/action/",
??????????????????? datatype: "json",
??????????????????? success: function (data) {
??????????????????????alert(data.Msg);
??????????????????? },
??????????????????? error: function (XMLHttpRequest, textStatus, errorThrown) {
??????????????????? }
??????????????? });
控制器中的代碼是:
ResultJsonInfo 為自定義類
?public JsonResult DoUploadModel(Model3DInfo model)
??????? {?
//其他代碼省略
??????????????? return Json(new ResultJsonInfo() { Result = true, Msg = "保存成功!" });
??????? }
解決方法如下,只需要修改兩點,修改過的代碼如下:
控制器中:
public JsonResult DoUploadModel(Model3DInfo model)
??????? {?
...
????????????return Json(new ResultJsonInfo() { Result = true, Msg = "保存成功!" },?"text/html");
??????? }
視圖中:
?? $("#formDoUpload").ajaxSubmit({
??????????????????? type: "POST",
??????????????????? url: "/controller/action/",
??????????????????? datatype: "json",
??????????????????? success: function (data) {
???????????????????????????data = JSON.parse(data);?
alert(data.Msg);
??????????????????? },
??????????????????? error: function (XMLHttpRequest, textStatus, errorThrown) {
??????????????????? }
??????????????? });
紅色的部分就是我修改的地方,讓其返回按照text/html返回,在前臺轉換一下,一切正常