Ajax很奇怪的问题

haihuan23 2009-08-09 01:22:20
小弟手写了一个Ajax 投票后到后台保存到数据库,然后返回还剩几个次。奇怪的问题是,点击之后并不是每次都进入到后台执行。有时候点击几次有时候点击几十次才进入到后台。在firebug调试下进入的次数比较多,IE下基本只执行一次。
请各位大大帮忙解决下。。
以下是代码:
<a onclick="addRec()" href="#" style="text-decoration: none">投票推荐</a>

function addRec(){
var bookid=document.getElementById("hidbookid").value;
var url="ajax/addRecs.aspx?bookid="+bookid+"&Math.random()";
getResult(url);
return true;

}


var http_request;
function getResult(url){
if(window.ActiveXObject){
http_request=new ActiveXObject("Microsoft.XMLHTTP");
}else{
if(window.XMLHttpRequest){
http_request=new XMLHttpRequest();
}else{
return;
}
}
if(http_request!=null){
http_request.onreadystatechange=onchangeRequest;
url=encodeURI(url);
http_request.open("GET",url,true);
http_request.send(null);
}

}

function onchangeRequest()
{
if(http_request.readyState==4){
if(http_request.status==200){
var result=http_request.responseText;
document.getElementById("bookMsg").innerText=result;
if(window.XMLHttpRequest){
alert(result);
}
}
}
}



...全文
76 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
白云在上 2009-08-12
  • 打赏
  • 举报
回复
缓存机制问题引起。包括IE缓存和asp.Net缓存机制都会引起这个问题。要解决这个问题研究一下缓存应该可以。
guohouchang 2009-08-11
  • 打赏
  • 举报
回复

var url="ajax/addRecs.aspx?bookid="+bookid+"&Math.random()";
改成 var url="ajax/addRecs.aspx?bookid="+bookid+"&a="+Math.random();

52,797

社区成员

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

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