Javascript 不修改divCount的变量
我一直在学习javascript,对此我已经挂断了一段时间。我试图在每次按下按钮时添加1,但它没有这样做,只是停留在0Javascript 不修改divCount的变量,javascript,Javascript,我一直在学习javascript,对此我已经挂断了一段时间。我试图在每次按下按钮时添加1,但它没有这样做,只是停留在0 <input id="numberBox" size="10" type="text"> <br><br> <input value="Double!" onclick="var n = document.getElementById('numberBox').value; n = n * 2; document.getElemen
<input id="numberBox" size="10" type="text">
<br><br>
<input value="Double!"
onclick="var n = document.getElementById('numberBox').value;
n = n * 2;
document.getElementById('numberBox').value = n";
input type="button">
<br>
<br>
<input value="Reset Number of Clicks" onclick="document.getElementById('divCount').innerHTML = 0;" type="button">
</p>
<hr>
<script>
var count = document.getElementById('divCount').innerHTML;
count ++;
document.getElementById('divCount').innerHTML = count;
</script>
<div id='divCount'>0</div>
var count=document.getElementById('divCount').innerHTML;
计数++;
document.getElementById('divCount')。innerHTML=count;
0
我还在学习,所以如果这是一个愚蠢的错误,请原谅我。谢谢。在尝试递增之前,请使用该函数确保count
实际上是一个整数:
<script>
var count = parseInt(document.getElementById('divCount').innerHTML, 10);
count ++;
document.getElementById('divCount').innerHTML = count;
</script>
或者在调用
document.getElementById('divCount')
时,由于DOM尚未完全加载,您可能会得到null。您必须在执行脚本时创建元素,并且必须解析字符串以使其递增:
<div id='divCount'>0</div>
<script>
var count = parseInt(document.getElementById('divCount').innerHTML, 10);
count ++;
document.getElementById('divCount').innerHTML = count;
</script>
0
var count=parseInt(document.getElementById('divCount').innerHTML,10);
计数++;
document.getElementById('divCount')。innerHTML=count;
如果您不想将脚本放在元素之后(或者如果您的JS代码位于导入到标头中的单独文件中),可以将内容放在加载时执行的函数中:
<script>
document.addEventListener('load', function(){
var count = parseInt(document.getElementById('divCount').innerHTML, 10);
count ++;
document.getElementById('divCount').innerHTML = count;
});
</script>
<div id='divCount'>0</div>
document.addEventListener('load',function()){
var count=parseInt(document.getElementById('divCount').innerHTML,10);
计数++;
document.getElementById('divCount')。innerHTML=count;
});
0
试试这个parseInt()函数:
<script>
var count = parseInt(document.getElementById('divCount').innerHTML);
count++;
document.getElementById('divCount').innerHTML = count;
</script>
<div id='divCount'>0</div>
var count=parseInt(document.getElementById('divCount').innerHTML);
计数++;
document.getElementById('divCount')。innerHTML=count;
0
0
函数oneUp()
{
var count=parseInt(document.getElementById('divCount').innerHTML,10);
计数++;
document.getElementById('divCount')。innerHTML=count;
}
我添加了parseInt函数,因此数字不再是字符串,但值仍然保持在0。我会更新我原来的帖子以获取更多代码。这个想法是,用户输入一个数字,它是双倍的,还显示了点击次数。谢谢您的帮助。@user2946457因为您的div在脚本之后(脚本中未定义),所以请将脚本移到div之后tag@AshkanMobayenKhiabani,说得好,我已经更新了我的答案以将其考虑在内。@AshkanMobayenKhiabani感谢您的输入。当我这样做时,脚本会自动将一个添加到0中,并且在用户按下按钮时不会对其进行修改。我不知道该怎么做。谢谢@用户2946457查看我的答案你检查了我的答案吗?非常感谢!这些信息真的很有用,我学到了更多关于函数的知识。非常感谢。
<script>
var count = parseInt(document.getElementById('divCount').innerHTML);
count++;
document.getElementById('divCount').innerHTML = count;
</script>
<div id='divCount'>0</div>
<div id='divCount'>0</div>
<input type="button" value="add" onclick="oneUp();" />
<script>
function oneUp()
{
var count = parseInt(document.getElementById('divCount').innerHTML, 10);
count ++;
document.getElementById('divCount').innerHTML = count;
}
</script>