js中网络请求阻塞

如若初见 2013-09-06 11:18:46
现在用winform通过加载html文档调用高德地图,在根据关键字查询时,会出现无响应的情况,这时候查询功能就不能使用了,查询一直会没响应,阻塞在那,有没有办法处理这种情况,比如超时之类的,不让它一直阻塞在那
...全文
261 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2013-09-06
  • 打赏
  • 举报
回复
给html页面增加一个全局变量loading=false,表示是否正在获取数据,winform在调用js前设置loading=true,然后js执行成功后设置loading=false。 winform启用一个timer定时检查这个js变量是否为false,如果超过5次或者多少次后说明js出问题了,停掉timer,重新刷新下webbrowser,重置js变量和DOM状态
如若初见 2013-09-06
  • 打赏
  • 举报
回复
引用 3 楼 showbo 的回复:
应该你的html页面有问题吧。。如第一次查询后去掉了查询按钮绑定的事件或者引用到了其他赋值变量的属性什么的导致出错没反应,自己检查下js代码
应该就是html的问题,关键是查询按钮是在winform里做的,调用html里的js,而且这种情况只是偶尔发生,我想有没有办法,即使发生了一次,不让它一直阻塞在那,也不让它影响后面的操作。
Go 旅城通票 2013-09-06
  • 打赏
  • 举报
回复
应该你的html页面有问题吧。。如第一次查询后去掉了查询按钮绑定的事件或者引用到了其他赋值变量的属性什么的导致出错没反应,自己检查下js代码
如若初见 2013-09-06
  • 打赏
  • 举报
回复
引用 1 楼 showbo 的回复:
你用的是webbrowser?操作webbrowser里面的网页查找内容应该不会影响winform的UI吧。。 还是你的查询功能是在winform内操作的?如果是启用另外一个线程来执行查询,要不发送http请求什么要等待的操作UI会假死没反应
是用的webbrowser,没有影响winform的UI,是根据关键字查询的时候没有返回查询结果(关键字没问题,而且关闭后,重开就正常了,应该是调用js时阻塞在那了),之后就一直没法查询出结果(按钮是可以响应的)
Go 旅城通票 2013-09-06
  • 打赏
  • 举报
回复
你用的是webbrowser?操作webbrowser里面的网页查找内容应该不会影响winform的UI吧。。 还是你的查询功能是在winform内操作的?如果是启用另外一个线程来执行查询,要不发送http请求什么要等待的操作UI会假死没反应

87,910

社区成员

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

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