javascript异步文件上传(兼容IE8+)

发布时间:2017-04-13 15:44:41 编辑:站点网
在非html5的情况下是无法用ajax把文件推送到后端的,只能通过form表单提交。但是form表单提交后浏览器会根据响应头与状态码对当前页面进行渲染、下载或跳转等行为,返回text、html、json等类型的内容时浏览器会对当前页面进行渲染,相当于刷新。所以基本思路很简单,提交上传文件表单时,让浏览器转移到iframe处理响应信息,响应信息嵌入一段js代码,这段js代码调用当前页面的一个方法就可以实现回调,类似于xss攻击。这时就要用到form表单的target属性,我们这里只需要用到iframename的值,iframename指的是iframe的name属性,意思是转移到iframe处理响应信息。我这里用的是jsp + spring mvc的实现,代码如下
图片:1.png
700)this.width=700;" style="max-width:700px;" title="点击查看原图" onclick="if(this.parentNode.tagName!='A') window.open('https://www.javascriptcn.com/attachment/1704/thread/14_1_1ac3681e724ecbd.png');" />
上传文件的JSP->demo.jsp后端代码:
图片:2.png
700)this.width=700;" style="max-width:700px;" title="点击查看原图" onclick="if(this.parentNode.tagName!='A') window.open('https://www.javascriptcn.com/attachment/1704/thread/14_1_0b02203f127e426.png');" />
更多相关内容:
    无相关信息
[!--temp.cy--]