Javascript按钮/开关-值到另一个php页面


Javascript Button/Switch - Values to another php page

首先,我要感谢这个网站,它帮了我很多。所以,我想做一个按钮/开关,当它被按下时,它传递一个值"1"到另一个页面,当它没有被按下(默认),它传递值"0"。我已经有一个代码,我与本网站和youtube的用户的帮助下:

 <script type="text/javascript">
    function onoffalarm(){
    var onof = document.getElementById('onof');
    var switchonoff = document.getElementById('switchonoff');
    if(onof.style.display=="block")
    {
        onof.style.display= "none";
        switchonoff.src= "images/buttonOFF.png";
        switchonoff.title= "Turn On";
        window.location.href="led.php?value=0";
    }else{
        onof.style.display="block";
        switchonoff.src= "images/buttonON2.png";
        switchonoff.title= "Turn OFF";
        window.location.href="led.php?value=1";
    }        
}

<img id="switchonoff" onmousedown= "onoffalarm()" src="images/ButtonOFF.png" width="217" height="217" alt="" title="Turn On">
<div id="onof">
</div>

在这段代码中,传递给"led.php"的唯一值是"1",但正如我所说,我希望它在按下时传递值1,在未按下时传递值0。另外,我还想知道如何保存按钮状态,当我刷新时,例如。我该怎么做呢?

看到

https://www.youtube.com/watch?v=A-3BxXdISG8

如何让JS变量在页面刷新后保留值?

如何在php中获取javascript变量值

Thanks for the help

您可以在JavaScript中使用cookie来存储在浏览器范围内可用的变量。刷新页面或关闭页面时,这些变量不会丢失。只有当用户清除cookie或cookie过期时才会删除。

function setCookie(cname, cvalue, exdays) {
    var d = new Date();
    d.setTime(d.getTime()+(exdays*24*60*60*1000));
    var expires = "expires="+d.toGMTString();
    document.cookie = cname + "=" + cvalue + "; " + expires;
}
setCookie("state", 0, 30);

setCookie(nameOfCookie, valueOfCookie, expiryInDays)

你也可以取。

function getCookie(cname) {
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0; i<ca.length; i++)  {
        var c = ca[i].trim();
        if (c.indexOf(name)==0) 
            return c.substring(name.length,c.length);
    }
    return "";
}
var cookieState = getCookie("state");

getCookie (nameOfCookie)

希望有帮助。