一、通过iframe来实现无刷新的的文件上传,其实是有刷新的,只是在iframe里面隐藏了而已
<form id="form1" method="post" action="upload.do" enctype="multipart/form-data" target="uploadframe" >
<input type="file" id="upload" name="文件上传" />
</form>
<iframe id="uploadframe" name="result_frame" style="visibility:hidden;"></iframe>
form里面的target要与iframe里面的id的值相等,指示是form相应了post事件,也就是post时间相应的时候刷新的是iframe而不是整个页面。
iframe 和frameSet里,都是在各自的框架中执行同步请求包括刷新页面的,而不会跨越frame(右边的表单提交或者刷新不会影响到左边导航部分)。所以,这里只是模拟了AJAX异步效果,实际还是同步请求。
二、利用jQuery的插件AjaxFileUpload 可以简单地实现这个异步的上传的效果