如何在html中获取输入框的值并对其进行操作

时间:2015-03-29 11:05:07

标签: javascript html

我正在测试一个简单的代码:

  1. 获取输入框的值
  2. 对它进行数学运算......
  3. 我的代码:

    setInterval(function(){var a=document.getElementById("myInputBox").value;var b=a+1;a.value=b;},1000);    
    

    我尝试每隔1秒将1添加到该输入框的值。

    例如,如果框的值为1,那么在1秒后它应该变为2,....等等......

    但它加入了框的值,例如11而不是2

    为什么?

2 个答案:

答案 0 :(得分:2)

var b = parseInt(a) + 1;

a是一个字符串,因此默认情况下+被解释为字符串连接。要修复,请将a传递给parseInt,因为它返回一个类型整数。现在+成为数学运算符。

额外学分:

var b = parseInt(a, 10) + 1;

要获得额外的完整性度量,请传递第二个( radix )参数,确保 base 10 用于确定返回整数值。

答案 1 :(得分:2)

尝试使用完整代码&演示:

从inputbox获取值是一个字符串,因此无法以数学方式计算。所以,首先使用函数parseInt将字符串转换为数字,然后计算并放入框中。



setInterval(function() {
  var box = document.getElementById("myInputBox");
  var r = parseInt(box.value, 10) + 1;
  box.value = r;
}, 1000);

<input type="text" id="myInputBox" value="1" />
&#13;
&#13;
&#13;