不能使加法工作

时间:2014-02-23 16:21:43

标签: javascript

我正在尝试创建一个按钮,单击该按钮会将p标签的值加200。我查了一下我的问题并点击了每一个结果,但没有用。请帮忙。每当我点击按钮时,它都会打印NaN(非数字)或200200200200200等。我需要帮助,这样每次点击按钮时,它会增加200个,而不是那两个混乱。 (另外没有连接) 这是我的代码:

<button onClick="addPoints()">Click to get points!</button>
<p id="counter"></p>



<script>
function addPoints(){
var id=document.getElementById("counter").innerHTML = parseInt(adding);
var adding = id + 200;
}

可能有一个我不知道的混乱。任何帮助将不胜感激!

5 个答案:

答案 0 :(得分:1)

您的adding变量在使用后已分配。此代码有效:

<button onClick="addPoints()">Click to get points!</button>
<p id="counter"></p>

<script>
function addPoints(){
     var x = document.getElementById("counter").innerHTML;
     document.getElementById("counter").innerHTML = (isNaN(parseInt(x))?0:parseInt(x)) + 200;
}
</script>

我在这里做的是该函数检查计数器<p>标记的值。如果内容是整数&gt; = 0,则添加200.否则,在添加200之前指定初始值0,以便添加内容并且不连接。

答案 1 :(得分:0)

您尝试在实际创建之前在parseInt中使用变量添加。试试这个:

function addPoints(){
   var id=document.getElementById("counter").innerHTML;
   var adding = id + 200;
   document.getElementById("counter").innerHTML = parseInt(adding);
}

答案 2 :(得分:0)

更改代码序列

function addPoints(){

var adding = parseInt( document.getElementById("counter").innerHTML) + 200;
document.getElementById("counter").innerHTML =adding;
}

答案 3 :(得分:0)

试试这个

function addPoints(){
  var sum=parseInt(document.getElementById("counter").innerHTML);
  sum = isNaN(sum) ? 0 : sum;
  sum += 200;
  document.getElementById("counter").innerHTML = sum;
}

答案 4 :(得分:0)

将id转换为数字

function addPoints(){
  var id=document.getElementById("counter").innerHTML = parseInt(adding);
  var adding = ((id*1) + 200);
  }