我正在使用这个插件让用户通过 ajax 上传图像。
要创建上传器并触发帖子,请使用此 jQuery 函数:
function createUploader() {
var uploader = new qq.FileUploader({
element: document.getElementById('file-uploader'),
allowedExtensions: ['pdf'],
multiple: false,
action: '@Url.Action("AjaxUpload", "Upload")',
onComplete: function(id, fileName, responseJSON){
window.location.href = responseJSON.message;
}
});
}
好吧,在responseJSON.message
我返回文件上传(实际转换)的路径时,我正在做一个技巧window.location.href
来强制浏览器显示该文件的用户下载框。
这在 FF 和 Chrome 上效果很好,但在 IE 上它说:
Do you want to open or save AjaxUpload from localhost?
如果您按打开,而不是从指定位置获取文件,您实际上会得到一个包含 responseJSON 消息的文件。
任何 jQuery 大师谁可以给我这个问题的线索?
更新:我可以确认的是问题不存在,window.location.href = responseJSON.message;
因为即使我删除了这一行并alert('something')
出现了同样的问题......所以不是解析onComplete
,而是 IE 尝试打开 JSON 响应......