怎么编写js,实现:批量下载筛选出来的列表每行对应的超链接文件?

for (var i = 1; i < “不知道这里要引用什么参数才能让for循环起来”.length; i++) {

window.open(FR.cjkEncode("${servletURL}?reportlet=链接url&参数=" + 参数 + "&format=excel"));

}

这个i我实在不知道要让其和表格哪些地方进行关联然后进行循环导出,我想着自己随便加一个数比如100,让i<100,但是只导出了第一行的文件。

有没有知道这个循环语句要咋写的吗?可难死我了。

FineReport yzm545275 发布于 2022-1-8 18:07
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
冷雨蝶舞Lv4见习互助
发布于2022-1-8 18:16(编辑于 2022-1-8 18:19)

你这个i<100是没有问题的 不是没有循环 应该是频繁弹出窗口被浏览器拦截了

只要在浏览器设置白名单就好了

哦对了不建议你用100尝试。。浏览器可能会卡死

  • yzm545275 yzm545275(提问者) 厉害,确实是浏览器拦截了,但是我导出的都是列表第一行的链接,我是通过传参导出每一行对应的文件的,是不是还需要加什么命令?
    2022-01-08 18:23 
  • 冷雨蝶舞 冷雨蝶舞 回复 yzm545275(提问者) 你那个语句中的链接url应该是动态的啊,应该是每行都不一样的 动态传入就行了,但是这种批量导出一顿弹窗效果不是很好尤其选的多了
    2022-01-08 18:24 
  • yzm545275 yzm545275(提问者) 回复 冷雨蝶舞 对呀,就是一个动态参数,但是导出的都是第一行的文件,不知道为啥,等这个研究出来了,我再看看有没有其他办法可以打包压缩一个文件下载的,但是js好像不支持下载zip,rar文件的。
    2022-01-08 18:36 
  • 冷雨蝶舞 冷雨蝶舞 回复 yzm545275(提问者) 在循环的js上面加一个debugger; 然后用谷歌浏览器 下载前打开开发人员工具 走一下调试 看看你那个动态参数循环的时候变化了么 如果你是在参数中写的获取 那么你循环的时候参数是不会变化的 因为那个只有在第一次调用函数的时候给你传参 for循环不会更新参数值
    2022-01-08 18:39 
  • yzm545275 yzm545275(提问者) 回复 冷雨蝶舞 是了,获取第一个参数值就闭包了,太难了,我看帆软帮助文档写的批量下载的代码也没这个问题,到我这bug了。
    2022-01-08 20:58 
  • 1关注人数
  • 490浏览人数
  • 最后回答于:2022-1-8 18:19
    请选择关闭问题的原因
    确定 取消
    返回顶部