javascript(数学)加起来一个数组

时间:2011-08-03 07:13:54

标签: javascript arrays getelementbyid

我有两个javascript文本框。

<input type="text" name="test" value="300" />
<input type="text" name="test" value="500" />

如何使用javascript提醒文本框中项目的总价?

这样的事情会起作用吗?

var price = document.getElementById("test");
alert(price)

4 个答案:

答案 0 :(得分:1)

这将考虑所有input个元素(如果您有很多元素,则非常有用)。按type过滤它们并在循环中获取它们的值:

var inputs = document.getElementsByTagName("input");
var total = 0;

for (var i = 0; i < inputs.length; i++){
    if (inputs[i].type = "text"){
        total += parseInt(inputs[i].value, 10);
    }
}

alert(total);

答案 1 :(得分:0)

<input id="test1" type="text" name="test" value="300" />
<input id="test2" type="text" name="test" value="500" />

JS:

var price = parseInt(document.getElementById("test1").value, 10) + parseInt(document.getElementById("test2").value, 10);

答案 2 :(得分:0)

<input id="price1" type="text" name="test" value="300" />
<input id="price2" type="text" name="test" value="500" />

这将有效:

var price = document.getElementById("price1").value+document.getElementById("price2").value;
alert(price)

注意没有包含id="price1"id="price2"

的其他标签

答案 3 :(得分:0)

由于多种原因,您所写的内容不起作用。首先,顾名思义,getElementById根据id属性的值获取一个元素。您尚未向input元素提供id属性,因此无法使用。

其次,document.getElementById('someId')返回一个元素,但您需要该值。您可以使用value属性来获取它:

var price1 = parseInt(document.getElementById("test1").value, 10);
var price2 = parseInt(document.getElementById("test2").value, 10);
alert(price1 + price2);

这将适用于以下HTML:

<input type="text" name="test" id="test1" value="300" />
<input type="text" name="test" id="test2" value="500" />

请注意parseInt的使用。 value属性返回一个String,因此我们使用parseInt尝试将其解析为Number。如果你不使用它,price1 + price2将简单地连接字符串。