一般情况下使用input标签上传文件后,整个页面是会跳转的,而大多数情况下,我们是不希望页面跳转,只希望能拿到后台传过来的数据,判断是否上传成功即可,那么如何不跳转页面,并获取到后台传过来的数据呢?如下:
HTML部分:
<div id="fileuploadbox">
<form action="${ctx}/itemPortrait.do?method=attachSave&prj_id=${bean.prj_id}&flag=222" method="post" target="tg" enctype="multipart/form-data">
<input type="file" name="fileUpload" />
<input type="submit" value="上传文件" />
</form>
<iframe name="tg" id="tg" style="display: none;"></iframe> //定义一个隐藏iframe用来跳转,上面form自动target到iframe来
</div>
JS部分:
$(function(){
$("#tg").load(function(){
var tempText=$(this);
var returnJson=tempText[0].contentDocument.body.textContent; //从后台传过来的数据,拿到就可以做相应的业务代码了
if (returnJson........) ......//业务逻辑
})
})