NutzCN Logo
问答 如何知道页面下载已经成功,弹窗通知用户
发布于 2220天前 作者 13402685732 1349 次浏览 复制 上一个帖子 下一个帖子
标签:

@At("/exportsScheduleDetial")
@Ok("raw:stream")//"raw:stream"
public File exportsScheduleDetial(@Param("..") Map<String, String> map, HttpServletRequest request, HttpServletResponse response){
String fileId = map.get("fileId");
Manager user = SysParameter.getUser();
String orgId = user.getOrgCode();
List list = new ArrayList();
String sql = " SELECT TITLE FROM SALT_FILE WHERE FILE_ID = '" + fileId+"' ";
list = ExtManager.getExtDao().getListstrs(sql, null);
String title="";//excel名字
if(list.size()>0){
title = list.get(0);
}
String userName = user.getDepartName();
Object[][] objects = getResult(fileId, orgId, userName);
try {
File file = baseInfTemDataExport(objects);
title+="的清算进度.xls";
String filename = URLEncoder.encode(title, Encoding.UTF8);
filename = filename.replace("+", "%20");//处理文件名空格变成+号 问题
response.reset();
response.setContentType("application/octet-stream");
//response.getWriter().write("alert('成功');");
response.addHeader("Content-Disposition","attachment;filename="" + filename + """);

       //request.getSession().setAttribute("mes", "下载成功");
       return FileUtil.createFileIfNoExists(file);
    } catch (IOException e) {
       e.printStackTrace();
    } 
    return null;
}

这是action的代码
这下面是jsp的代码 完全不知道怎么弄啊
function exports(){

var isValid = $("#paramTables").form('validate');
if(isValid){
//$("#niu").attr('disabled',true);
$("#paramTables").submit(
);
//$("#niu").removeAttr("disabled");
}
}

本人感觉action向页面返回的是File 页面算是废了

9 回复

难受 页面只能用submit提交 我实在想不出来怎么通知用户下载成功了

一个入口方法想干两个事(文件下载+ajax返回)?没门的。。。

那还有救吗 大神

下载jsp 页面不能用 get获取回调函数 也不能用 post获取回调函数, 只能用submit ajax也不行 这个问题无力回天了 5555555

有些ajaxfiledownload之类的方案

或者在下载的入口方法里面望session放个值,加个入口方法读这个值判断是否下载开始了

往session里放值 好放进去,怎么取出来啊 大佬 直接取 肯定没有 ,等好长时间才能去到,没办法 数据库交互时间太长

轮训咯。。。

不会轮训 悲剧了 看了半天没看懂.................................

js的setInterval没用过?

添加回复
请先登陆
回到顶部