【问题标题】:save div visiblity states between XMLHTTPRequest refreshes在 XMLHTTPRequest 刷新之间保存 div 可见性状态
【发布时间】:2016-02-20 14:29:12
【问题描述】:

我有一个调用 php 页面的 html 页面,如下所示。它每 10 秒刷新一次。菜单 php 页面有一组 div,其内部具有可切换的可见性。 div 的数量和它们的 id 是通过从数据库中读取动态确定的。每次 php 部分刷新时,div 会自动变得不可见,这很烦人。我想知道是否有一种方法可以在两次刷新之间告诉我的 php 页面哪些 div 以前可见,哪些 div 不可见。

function refresh (){
var menu=new XMLHttpRequest(); 

menu.onreadystatechange=function(){ 

if (menu.readyState==4 && menu.status==200){ 
    document.getElementById("menuDiv").innerHTML=menu.responseText; 
   } 
} 
menu.open("GET","menu.php",true); 
menu.send();
}

【问题讨论】:

    标签: javascript php html css


    【解决方案1】:

    您可以尝试像这样使用 localStorage。

    localStorage["test"] = menu.responseText;
    

    像这样使用它

    document.getElementById("menuDiv").innerHTML = localStorage["test"];
    

    在此处了解有关 localStorage 的更多信息。 http://www.w3schools.com/html/html5_webstorage.asp

    这适用于较新的浏览器,但如果您也想支持较旧的浏览器,则需要使用 cookie。

    http://www.w3schools.com/php/func_http_setcookie.asp

    如果您需要在服务器端存储信息,您可以使用会话变量。更多信息请点击此处。

    http://www.w3schools.com/php/php_sessions.asp

    【讨论】:

    • 我可以从 html 文件中传递 localstorage、cookie 或 session 值以在 php 文件中使用吗?
    • 您可以查询查询字符串和 $_GET['test'] 在服务器和客户端之间来回传递。 php.net/manual/en/reserved.variables.get.php
    • html文件中javascript上的localStorage和php文件中的$_GET是同一个数组吗?
    • 在此处查看答案以获取更具体的代码。 stackoverflow.com/questions/16042565/…localStorage 只能存储字符串。此外,javascript 和 php 并没有真正按照您建议的方式进行交互,您只能以各种方式传递信息,例如 POST 或 GET,或者在服务器到客户端的情况下,在 javascript 中打印出变量。您也可以参考这里关于服务器和客户端脚本之间差异的答案stackoverflow.com/questions/6369313/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-14
    • 2019-10-14
    • 2021-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多