我有一个使用ajax读取xml文件的网页。 Ajax因为我只想更新数字而不是整个页面。 它使用SetInterval()每5秒读取一次文件,因为文件每5秒更新一次。 我想知道通过在查询字符串中添加一个Counter来重新加载xml文件的次数。 我失败了,因为如果我更改了查询字符串,页面会重新加载。是否可以在JavaScript / JQuery中执行此操作?
这就是我试图解决这个问题的方法:
function loadXMLDoc(filename) {
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
else // code for IE5 and IE6
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
var href = window.location.href;
if (counter < 1) {
href += "index.html?count=" + ++counter;
window.location.href = href;
} else {
href = href.substring(0, href.length - 1);
window.location.href = href + ++counter;
}
xmlhttp.open("GET", filename + "?count=" + counter, false);
xmlhttp.send();
var xdoc = xmlhttp.responseXML;
var xmlDoc = new ActiveXObject('Msxml2.DOMDocument.6.0');
xmlDoc.loadXML(new XMLSerializer().serializeToString(xdoc));
return xmlDoc;
这也不会产生我想要的查询字符串:
http://localhost:52646/index.html?count=1index.html?count=1
这有可能实现吗?
答案 0 :(得分:0)
您可以使用HTML5 localstorage来实现此目的,下面是您的ref的一些代码:
if(localStorage.getItem('count')=='undefined')
localStorage.setItem('count',1);
else
localStorage.setItem('count',parseInt(localStorage.getItem('count'))++);