请教大神jquery里ajax的同步和异步的问题
最近使用struts2+jquery+json做实验遇到点问题,直接输入action地址数据返回正常,但是ajax死活就是success不了,后来把ajax设置为同步就可以success了,估计是struts2的数据还没生成,ajax就已经判断为error了。想请教各位,如果我确实是想异步接收数据,前台延迟点显示也无所谓,有没有办法?谢谢!
------解决方案--------------------定时器 字数
------解决方案--------------------延长ajax timeout时间试试
------解决方案--------------------话说,这个异步的回调函数,写的有问题吗?
要按照这样的写法:
//这个回调的函数的绑定
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的关于这个的介绍。