如何防止每个页面加载服务器的请求

时间:2012-06-01 21:23:00

标签: javascript

我想知道是否有办法阻止Javascript在每个页面调用php并填充数组,而只是在用户浏览器的所有页面上传送数组。

目前,每个页面加载它都会对服务器产生新的要求,并重新填充数组,例如当用户点击html页面上的链接时。

这就是我在JS文件中的内容:

//Browser Support Code
function call_data(url,data){
  if (window.XMLHttpRequest) {              
    AJAX=new XMLHttpRequest();              
  } else {                                  
    AJAX=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (AJAX) {
  querystring = "?dta="+data;
     AJAX.open("GET", url + querystring, false);                             
     AJAX.send(null);
     return AJAX.responseText;                                         
  } else {
     return false;
  }                                             
}       


var statistics = JSON.parse(call_data('user_info.php',userid));//user data

如果它调用每个页面加载,我目前没有看到优势,因为我可能没有...除非有一种方法可以保持我的数组设置每个页面加载?

3 个答案:

答案 0 :(得分:3)

您应该使用HTML5 Local Storage

答案 1 :(得分:1)

您可以通过JavaScript使用Web Storage / DOM Storage API。它具有良好的浏览器支持,如果您正确实现它,如果Web存储不可用,您总是可以请求PHP页面。

这是一个帮助您入门的教程:

http://www.diveintojavascript.com/tutorials/web-storage-tutorial-creating-an-address-book-application

答案 2 :(得分:0)

您可以将其存储在cookie中并检查cookie中的值是否有效,从cookie加载它,否则从服务器请求它并将其保存在cookie中以备将来使用。