我正在寻找正确的代码,因此名为“finder()”的函数可以执行并在Array中找到名为“sum”的最高值。 按“查找最大”按钮结果为:“[object HTMLInputElement]” 感谢您的任何帮助! 这是代码:
<html>
<head>
<title>Max</title>
<meta charset="utf-8">
<script type="text/javascript">
var sum = document.getElementsByName('addends');
function add() {
var x = document.getElementById('apendiks');
x.innerHTML+="<br/><input type='text' name='addends' size='7'>";
}
function finder() {
var max = sum[0];
for(i=0; i<sum.length;i++){
if(sum[i] > max){
max = sum[i];
}
}
document.getElementById('showMaxValue').innerHTML = max;
}
function gather() {
var total=0;
for(i=0; i < sum.length; i++){
total+=parseFloat(sum[i].value);
}
document.getElementById('score').innerHTML = total;
}
</script>
</head>
<body>
<p><input type="button" onclick="add()" value="Add a new box"> </p>
<p><input type="button" onclick="" value="-"> </p>
<div id="apendiks"></div>
<p><input type="button" onclick="gather()" value="Total sum"> </p>
<p>Score: <b id="score"></b></p>
<p><input type="button" onclick="finder()" value="Find max"> </p>
<p id="showMaxValue"></p>
</body>
</html>
答案 0 :(得分:0)
var sum = document.getElementsByName(&#39; addends&#39;);
此行将为您提供节点列表,而不是数组。
在finder
方法中,您需要将其视为
function finder()
{
var max = paeseInt(sum[0].value) ;
for(i=0; i<sum.length;i++){
if(parseInt(sum[i].value) > max && !isNaN(sum[i].value)){ //assuming that strings should be ignored
max = parseInt(sum[i].value) ;
}
}
document.getElementById('showMaxValue').innerHTML = max;
}
答案 1 :(得分:0)
使用.value
获取输入字段的值
<html>
<head>
<title>Max</title>
<meta charset="utf-8">
<script type="text/javascript">
var sum = document.getElementsByName('addends');
function add() {
var x = document.getElementById('apendiks');
x.innerHTML+="<br/><input type='text' name='addends' size='7'>";
}
function finder() {
var max = sum[0].value;
for(i=0; i<sum.length;i++){
if(sum[i].value > max){
max = sum[i].value;
}
}
document.getElementById('showMaxValue').innerHTML = max;
}
function gather() {
var total=0;
for(i=0; i < sum.length; i++){
total+=parseFloat(sum[i].value);
}
document.getElementById('score').innerHTML = total;
}
</script>
</head>
<body>
<p><input type="button" onclick="add()" value="Add a new box"> </p>
<p><input type="button" onclick="" value="-"> </p>
<div id="apendiks"></div>
<p><input type="button" onclick="gather()" value="Total sum"> </p>
<p>Score: <b id="score"></b></p>
<p><input type="button" onclick="finder()" value="Find max"> </p>
<p id="showMaxValue"></p>
</body>
</html>
&#13;