请教大神jquery里ajax的同步和异步的问题

psyjf 2014-03-21 03:33:22
最近使用struts2+jquery+json做实验遇到点问题,直接输入action地址数据返回正常,但是ajax死活就是success不了,后来把ajax设置为同步就可以success了,估计是struts2的数据还没生成,ajax就已经判断为error了。想请教各位,如果我确实是想异步接收数据,前台延迟点显示也无所谓,有没有办法?谢谢!
...全文
191 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
psyjf 2014-03-24
  • 打赏
  • 举报
回复
谢谢各位,现在搞清楚哪里出问题了,是由于自己用了alert来调试,改成给元素赋值调试就可了,只是不明白为什么alert和异步为什么会有这样的冲突,alert明明是放在success和error里面的了
ZhangRuuui 2014-03-22
  • 打赏
  • 举报
回复
是不是过滤器把XHR排除了
张运领 2014-03-21
  • 打赏
  • 举报
回复
话说,这个异步的回调函数,写的有问题吗? 要按照这样的写法:

//这个回调的函数的绑定
xmlhttp.onreadystatechange=state_Change;
function state_Change()
{
if (xmlhttp.readyState==4)
  {// 4 = "loaded"
  if (xmlhttp.status==200)
    {// 200 = OK
    // ...our code here...
    }
  else
    {
    alert("Problem retrieving XML data");
    }
  }
}
如果这里是没有问题,那也可能是你设置的要求的数据格式什么的有些区别吧 http://www.w3school.com.cn/xml/xml_http.asp 像异步请求数据时,这个回调会一直监听,直到获取到数据,而timeout这个属性,是为了设置最长监听时间的,就是说,如果设置了这个属性,那么在这个指定的时间内,没有成功获取数据的话,则执行error的处理。 我觉的,你这里仔细检查下,然后认真看下,上面W3C的关于这个的介绍。
happy59 2014-03-21
  • 打赏
  • 举报
回复
延长ajax timeout时间试试
我是来接分的 2014-03-21
  • 打赏
  • 举报
回复
定时器 字数

87,910

社区成员

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

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