AJAX 后台有时执行方法,有时执行,有时不执行问题 - Web 开发 / Ajax我经常碰见这样的问题我想用JS执行后台
AJAX 后台有时执行方法,有时执行,有时不执行问题 - Web 开发 / Ajax
我经常碰见这样的问题
我想用JS执行后台方法,为什么有时候执行,有时候不执行
代码如下:
var request;
HTML codefunction createRequest() { try { request = new XMLHttpRequest(); } catch (trymicrosoft) { try { request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (othermicrosoft) { try { request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (failed) { request = false; } } } if (!request) alert("Error initializing XMLHttpRequest!");}
createRequest();
var requesturl = '<%=request.getContextPath()%>/trainplan/addLeafNode.shtml?objectivename='+document.all.objectivename.value+'&objectivecontent='+document.all.objectivecontent.value+"&paterid="+paterid;
request.open("GET", requesturl, true);
request.onreadystatechange = openResponse;
按道理说,AJAX应该执行<%=request.getContextPath()%>/trainplan/addLeafNode.shtml 地址后台里面的方法
因为我里面有修改数据库的操作
但有时候添加数据库记录,有时候不添加数据库记录,到底怎么解决,我只想搞明白,没别的意思
那位大大能解释一下
我后台代码肯定没问题,如果我是正常提交,然后页面刷新的话,是正确的
[解决办法][解决办法]我觉得后面加个 time比较合适, 比如你不想他每次请都都更新缓存, 就可以后台跟个时间, 以分钟或小时为标准, 即在同一时间段内发送的后面跟随数字是相同的...
[解决办法][解决办法]UP
[解决办法]缓存问题
方法一:
xmlHttp.open("GET", "default.aspx", true);
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.send(null);
方法二:
xmlHttp.open("GET", "default.aspx?param="+Math.random(), true);
或者
xmlHttp.open("GET", "default.aspx?param="+new Date().getTime(), true);
[解决办法][解决办法]加随机数行,加时间也行,目的只有一个,不用缓存,每次都去数据库取,就不会出现问题了。
[解决办法]mark
[解决办法][解决办法]