带有输入javascript的动态数组
我目前正在做一个学校项目,我必须使用javascript创建一个页面,用户可以从输入框中输入多个数字 输入每个数字后,会有一个添加按钮,然后在输入下方的另一个框中显示数字。因此,每个数字都垂直显示在页面下方 从那里我还需要两个按钮。第一个要计算的是把这些数字加起来算出平均值。第二个将清除阵列以重新启动带有输入javascript的动态数组,javascript,Javascript,我目前正在做一个学校项目,我必须使用javascript创建一个页面,用户可以从输入框中输入多个数字 输入每个数字后,会有一个添加按钮,然后在输入下方的另一个框中显示数字。因此,每个数字都垂直显示在页面下方 从那里我还需要两个按钮。第一个要计算的是把这些数字加起来算出平均值。第二个将清除阵列以重新启动 我相信最后两个按钮没问题。我不确定的是,用户输入应该如何创建动态数组,然后显示在页面中。我已经能够获得一个数字输入,但我错过了下一步,因此输入的下一个数字将显示,并允许我构建一个可以执行计算的数组
我相信最后两个按钮没问题。我不确定的是,用户输入应该如何创建动态数组,然后显示在页面中。我已经能够获得一个数字输入,但我错过了下一步,因此输入的下一个数字将显示,并允许我构建一个可以执行计算的数组 最简单的方法是循环显示数字的输入并以这种方式添加每个数字,而不是试图维护从第一个输入更新的数组 将显示的输入元素粘贴到具有id的容器中,然后可以执行以下简单操作:
var container = document.getElementById("container-id"),
inputs = container.children,
total;
for (var x = 0, y = inputs.length; x < y; x++) {
total += parseInt(inputs[x].value, 10);
}
alert(total) //do something way better than alert!
请试试这个,我想它对你有用 JAVA脚本:
<script type="text/javascript">
var arr = new Array();
function addNum()
{
var temp = document.getElementById('a').value;
arr.push(temp);
document.getElementById('a').value = "";
getAvg();
}
function getAvg()
{
var sum = 0;
for(var i = 0; i < arr.length; i++){
sum += parseInt(arr[i]);
}
var avg = sum/arr.length;
document.getElementById('sum').value = sum;
document.getElementById('avg').value = avg;
}
function clearAll()
{
arr.length = 0;
document.getElementById('a').value = "";
document.getElementById('sum').value = "";
document.getElementById('avg').value = "";
}
</script>
HTML:
<table>
<tr><td><input type="text" id="a"></td>
<td>Sum :<input type="text" id="sum"></td>
<td>Avg :<input type="text" id="avg"></td></tr>
<tr><td><input type="button" value="add" onclick="addNum()"></td>
<td><input type="reset" value="reset" onclick="clearAll()"></td></tr>
</table