Javascript功能1:
var count = 0;
function myFunction()
{
count++;
document.getElementById("count").innerHTML=count;
}
Javascript功能2:
function demo() {
var y=document.getElementById("count").innerHTML;
if(y=="0") {
alert("There's nothing to be reset.");
}
else {
var count=0;
alert("Reset.");
// alternative code I used: document.getElementById("count").innerHTML="0";
}
}
HTML code:
<a href="Javascript:myFunction()">Click here</a>
<p>Total:<span id="count">0</span></p>
<button onclick="demo()">reset</button>
有没有办法在此代码中将变量重置为0?
我尝试使用count
将变量document.getElementById()
重置为零,并将=0;
添加到变量中。这些都不奏效。例如,如果用户要单击该链接,则计数将增加到1.当他们单击重置按钮时,它将显示为重置为0(除非使用`var count = 0;)。但是,如果用户再次单击该链接,则计数将返回值2,因为它可以继续从上一次开始递增。
如果已经在其他地方回答了这个问题,我很抱歉,但要搜索=
和++
这两个字词非常困难。
答案 0 :(得分:1)
您使用var
else {
var count=0;
alert("Reset.");
应该是
else {
count=0;
alert("Reset.");
答案 1 :(得分:0)
两件事:
摆脱重置变量的var
。这将为您提供一个具有相同名称的单独局部变量。
使用“count”作为变量名称,如果它是全局的,如果你在DOM中还有一个id为“count”的元素,则会导致问题。使用不同的变量名称或不同的id,或确保变量不是全局的(无法通过发布的代码判断)。
答案 2 :(得分:0)
您需要在代码中更改的内容是:
并与
进行比较 if(parseInt(y) === 0) // You are converting it to integer and doing a strict check
然后构建到
else {
count = 0;
alert('Reset');
}