在网页刷新时增加变量的变量值

时间:2014-06-05 15:22:27

标签: javascript html cookies page-refresh

我有代码,每按一次按钮就会增加一个值10。每当我刷新页面时,我希望该代码增加值。我怎么做?

以下是代码:

<html>
<head>
<script type="text/javascript">
function reveal() {
var val = document.getElementById("outputtext").value;
var result = parseInt(val) + parseInt(10);
document.getElementById("outputtext").value = result;
}
</script>
</head>

<body>
<p> <h3>Click on below button to increase the value by 10<h3> </p>

<button onclick="reveal()"> Increment</button>

<table>
<tr>
<td><textarea id="outputtext">10</textarea></td>
</tr></table>
</body>
</html>

2 个答案:

答案 0 :(得分:3)

对于问题的标题,您可以使用以下Javascript函数调出上一页:

history.back();

如SO:How to emulate browser back button using javascript

这个问题所述

如果您想使用Javascript在页面刷新时增加变量,则应将此变量保存为用户浏览器上的cookie:

document.cookie="increment=10";

这些链接中的任何一个都可以为您提供帮助:http://www.w3schools.com/js/js_cookies.asp http://www.htmlgoodies.com/beyond/javascript/article.php/3470821

答案 1 :(得分:-1)

通过在URL中使用哈希(#value),您可以在没有cookie的情况下执行此操作。试试这段代码:

<html>
<head>
</head>

<body>
    <h3>Click on below button to increase the value by 10<h3>

    <button onclick="reveal()"> Increment</button>

    <table>
        <tr><td><textarea id="outputtext">10</textarea></td></tr>
    </table>

    <script type="text/javascript">

    //Get the last value
    var current = parseInt(location.hash.slice(1));
    //If it is set, increment it
    if(current){
        document.getElementById("outputtext").value = current + 10;
        location.hash = '#' + (current+10);
    }

    function reveal() {
        var val = document.getElementById("outputtext").value;
        var result = parseInt(val) + parseInt(10);
        document.getElementById("outputtext").value = result;
        //Set the value
        location.hash = '#' + result;
    }

    </script>
</body>
</html>

请注意,我将javascript移动到文件末尾,以便在代码执行时定义#outputtext