当我添加一些东西时,变量的值不会改变

时间:2018-02-16 09:27:52

标签: javascript

当我添加钱时,defaultMoney值会发生变化但是当我再次添加钱时,它只会更改defaultMoney的值并且不会添加它的值

这是代码

function addmoney(){
var defaultMoney=0;
var newMoney=document.form.newMoney.value;

defaultMoney+=newMoney

document.getElementById("money").innerHTML="defaultMoney";
}   

2 个答案:

答案 0 :(得分:0)

你需要

  • 保留资金的全局变量,
  • 转换为数字,并使用输入的默认值进行检查
  • 使用计算结果更新输出。

function addmoney() {
    var newMoney = document.form.newMoney.value;
    defaultMoney += +newMoney || 0; // prevent NaN
    document.getElementById("money").innerHTML = defaultMoney;
    document.form.newMoney.value = '';
}   

var defaultMoney = 0; // global
<div id="money">0</div>
<form name="form">
    <input type="text" name="newMoney" onchange="addmoney()">
</form>

答案 1 :(得分:0)

每次您的功能运行时,defaultMoney都会变为0

// declare default money outside of your function
var defaultMoney = 0;
function addmoney(){
  //Get your form by ID
  var newMoney = parseInt(document.getElementById("form-id").value, 10);
  // add the value
  defaultMoney += newMoney
  // append result - use variable name, not string
  document.getElementById("money").innerHTML = defaultMoney;
}