【发布时间】:2012-01-25 09:26:38
【问题描述】:
我试图从我的操作中返回 Json,之后 IE 尝试下载它并向我显示保存对话框。 我在 Firefox 中测试过,它运行良好。
return Json(new { success = false, message = ex.Message }, "application/json");
这种行为的原因是什么?我该如何解决这个问题?
在 Javascript 部分之后我尝试这个
if (responseJSON.success == false) {
alert(responseJSON.message);
cancel();
}
但 IE 无论如何都不会显示警报。它给我带来了保存对话框。
我尝试将"application/json" 更改为"text/plain" 并且保存对话框消失了,但我还看不到警报。我错过了什么?
编辑:
这是我的复杂 Javascript,我正在使用 Valums qquploader(ex-Ajaxupload) 上传图片
var uploader = new qq.FileUploader({
element: document.getElementById("image-upload"),
action: '/Home/ImageUpload',
allowedExtensions: ['jpg', 'png', 'gif'],
sizeLimlit: 2048,onComplete: function (id, fileName, responseJSON) {
if (responseJSON.success == false) {
alert(responseJSON.message);
cancel();
}
else {
alert("success");
//some code here
}
}
});
我在 else 部分使用 alert("success"); 进行了测试,并将 json 转发为 "text/plain",之后我看到了警报。但在那个时候responseJSON.success != false对我来说。你对此有什么建议吗?
【问题讨论】:
-
你如何称呼你的行动?你能告诉我们客户端的javascript吗?
-
任何 IE 插件或本地设置调整?检查您注册的 MIME 类型。
-
检查我的编辑我已经编写了部分 Javascript。 @John Gibb,我认为我如何称呼我的行动并不重要。
-
您可以发布发出请求的完整 javascript 吗?
-
看看新的编辑。
标签: javascript asp.net-mvc json asp.net-mvc-3