我有代码,每按一次按钮就会增加一个值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>
答案 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
。