首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

前端的大佬们帮帮忙看个问题

  •  
  •   yestodayHadRain · 35 天前用 iPhone 发布 · 557 次点击
    这是一个创建于 35 天前的主题,其中的信息可能已经有所发展或是发生改变。
    就是一个 excel 批量导出数据的功能,功能目前是这样实现的: 前端提交表单,后端接受请求参数处理完后请求转发到新的页面往新的页面推流。

    现在的问题是这样: 当数据量特别多的时候(上万条),前端等待的时间会比较久。这个时候想在表单提交之前加个 loading,但是表单提交后请求转发到新页面,loading 要怎么取消呢?

    另外说一下,因为某些原因不能走异步的请求,只能走表单提交,后端也只能请求转发。这种情况,如果只动前端的话有什么好的办法吗?
    9 回复  |  直到 2019-06-18 15:23:20 +08:00
        1
    yhxx   35 天前
    提交之后不是跳转到新页面去了吗
    都已经到了新页面,上一个页面的 loading 自然就没了啊,还需要手动取消的吗?
        2
    Hilong   35 天前 via Android
    @yhxx 应该是打开新选项卡的意思吧
        3
    fe619742721   35 天前
    新页面 postMessage ?
        4
    yestodayHadRain   35 天前 via iPhone
    @yhxx 不是,新页面是一个类似弹框的页面比较小,就是浏览器下载 excel 文件的一个窗口那种。所以原来页面的 loading 还是会看到
        5
    yestodayHadRain   35 天前 via iPhone
    @fe619742721 可以说下细节吗?
        6
    pandacat   35 天前 via Android
    postmessage 或者在 window 上监听 localstorage 的 storage 事件
        7
    rootlinsen   35 天前 via iPhone
    页面加个 iframe,form 的 target 指向这个 iframe,action 指向后台的网址不变,不知能否下载,然后前端可以获取在 iframe 里面后台网址的页面内容,给这个后台页面某个 div 的内容写成成功或失败,前端根据这个 div 内容判断是否隐藏 loading
        8
    TomVista   35 天前
    加载 loading
    settimeout(function(){
    等待后端
    关闭 loading
    settimeout(function(){
    显示新窗口
    },1)
    },1)
        9
    yestodayHadRain   34 天前 via iPhone
    @pandacat jsp 页面可以用 postmessage 或者 localstorage 吗?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3273 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 05:06 · PVG 13:06 · LAX 22:06 · JFK 01:06
    ♥ Do have faith in what you're doing.