[英]JQuery file upload iframe method
我想设置一个与IE8兼容的跨域文件上传解决方案。 我一直在使用blueimp的JQuery File Upload插件和iframe transport选项 。
上传效果很好,但是我无法从服务器端获取上传结果。 将选项重定向到result.html文件进行解析似乎是解决方案,但是问题是我无法访问托管该表单的服务器来部署HTML文件。 在这种情况下,是否有其他方法可以在不将HTML文件部署到原始服务器的情况下检索上载的结果?
在javascript文件中,您可以添加此事件监听器( 对于非jQuery方式,请参见此答案 )
$(window).on('message', function(e){
var data = e.originalEvent.data || e.originalEvent.message;
data = JSON.parse(data); //only if you did JSON.stringify for the data you sent
//do what you need with the message you send.
});
接下来,完成上传后,您可以将其写入页面,也可以将iframe重定向到上面包含该内容的另一页面。
window.parent.postMessage('File Upload Done', '*');
如果您需要向父级发送更多数据,则需要先进行JSON.stringify
内容(旧的IE和FF不允许对象,只能是字符串)。
window.parent.postMessage(JSON.stringify({'success': true, 'id': 1942}), '*');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.