不等待ajax返回结果就可以跳转到其他页面

a344067183 2018-05-15 05:12:45
有一个界面,进去后需要等待大概3~5秒,数据才出来,我想问问,我点进这个页面后,然后没有耐心,想点击其他界面,每次都是必须要等待接受到返回结果后,才能跳转到其他界面,是异步的,请问有什么办法可以终止到这次请求,或者等后台去执行,不影响前台操作
...全文
1555 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gemini_Kanon 2019-06-05
  • 打赏
  • 举报
回复
可能是由于当前页面加载慢的原因,导致你想点击的功能还没加载出来?
licip 2019-05-17
  • 打赏
  • 举报
回复
点其它界面,这个是其它界面是不是由ajax执行后生成的。如果是,那你必须要等。 如果不是,那不应该,你是异步的。应该不是这个异步造成的。可能是其它的代码。
qq_26536505 2019-05-17
  • 打赏
  • 举报
回复
引用 1 楼 clark_kidd 的回复:
向服务器请求如果确认是异步的,那么浏览器就不应该被ajax请求阻塞。 你应该先检查服务器的请求用了多久(在浏览器中按F12,到 Network页签查看这次请求在服务器端的耗时),如果服务器端耗时3~5秒,那么几乎可以肯定,这个ajax请求一定是非异步的。如果ajax请求很快就完成了,那么就要检查ajax success的js代码。 有时,页面渲染(控件绘制)会比较花时间,比如某些grid控件,列很多,或者需要控件自动计算列宽时,渲染耗时会很严重。javascript是单线程的,渲染耗时是有可能的,观察这3~5秒的时间里,浏览器是否占用了较高的cpu资源,可以确认此问题。
设置了异步,耗时是3-5秒,那该怎么解决这个问题呢?
clark_kidd 2018-05-20
  • 打赏
  • 举报
回复
向服务器请求如果确认是异步的,那么浏览器就不应该被ajax请求阻塞。 你应该先检查服务器的请求用了多久(在浏览器中按F12,到 Network页签查看这次请求在服务器端的耗时),如果服务器端耗时3~5秒,那么几乎可以肯定,这个ajax请求一定是非异步的。如果ajax请求很快就完成了,那么就要检查ajax success的js代码。 有时,页面渲染(控件绘制)会比较花时间,比如某些grid控件,列很多,或者需要控件自动计算列宽时,渲染耗时会很严重。javascript是单线程的,渲染耗时是有可能的,观察这3~5秒的时间里,浏览器是否占用了较高的cpu资源,可以确认此问题。

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧