Ajax readyState值,我输出结果依次为2,4,html代码段,3。请问是什么原因?

xmlRequest.open("GET","../testServlet",true);写这断代码时readyState输出的结果为2,4,readyState的直就是... xmlRequest.open("GET","../testServlet",true); 写这断代码时 readyState输出的结果为2,4 ,readyState的直就是一段html代码段 最后才是3
如果改成xmlRequest.open("GET","../testServlet?",true); 或者后面加参数。就没有错。这个是为什么啊?求大神赐教。给加分!!
展开
 我来答
wjfcfy
2012-06-29 · TA获得超过552个赞
知道小有建树答主
回答量:646
采纳率:0%
帮助的人:627万
展开全部
get请求一直是加载缓存里面的数据。就是你get请求一次之后,后面还是用这个url一直请求到的结果都是你第一次请求到的ajax内容。
为什么你第二次就可以取到了,是因为你get请求后的url变了,加了一个?,url变了。
所以你想要解决问题,一是用post方法提交,另一种就是用xmlRequest.open("GET","../testServlet?t=(new Date().getTime())",true);
每次都给url加一个参数,取当前时间,url参数变了,所以每次就不会去取缓存中的数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式