无法显示输出

时间:2017-06-08 02:11:45

标签: javascript html arrays loops

对于那些程序员来说,这可能听起来很简单,但我似乎无法弄明白。我正在编制一个程序,其中4个数字中最大的输出。我已经掌握了核心代码,但我似乎无法思考如何在屏幕上显示结果。我希望这样当用户在文本框中键入数字时,只需按一下按钮,结果就会显示在另一个文本框中。谢谢你的时间和帮助

HTML

<html>
<head>
  <meta charset="UTF-8">
  <script src="Main.js" type="text/javascript"></script>
  <link href="Main.css" rel="stylesheet" type="text/css"/>
</head>
<body>

    <form id="Awesome">
            <label>Input Numbers Here: </label><input type="text" 
id="txtBox">
            <br><br>
            <label>Dec to Roman #: </label><input type="text" id="Results">
            <br><br>
            <input type="button" value="Calculate" id="Execute" 
onclick="largestOfFour()">
    </form>

</body>
</html>

Javascript

function largestOfFour(arr) {
var largestNumbers = [];
var currentLargest;
for (var x =0; x <arr.length; x++) {
    currentLargest = 0;
    for (var y = 0; y < arr [x].length; y++) {
        if (arr[x][y] > currentLargest) {
            currentLargest = arr[x][y];
        }
    }
    largestNumbers.push(currentLargest);
}
return largestNumbers;

document.getElementById('Results').value = largestNumbers;

}

1 个答案:

答案 0 :(得分:0)

在输入框中输入数字后,我们可以将其值读取为字符串。用空格拆分该字符串可以得到数字数组。我们将比较该数组中的每个数字,并将最大数字保存在largest中。然后我们在结果框中显示它的值。

function largestOfFour() {
  // get string from the input
  var s = document.getElementById('txtBox').value;
  var numbers = s.split(' ');
  var largest = 0;
  for (var x = 0; x < numbers.length; x++) {
    var current = parseInt(numbers[x])
    if (current > largest)
      largest = current;
  }
  // display the largest number
  document.getElementById('Results').value = largest;
}
<form id="Awesome">
  <label>Input 4 Numbers (space separated): </label>
  <input type="text" id="txtBox">
  <br><br>
  <label>Max #: </label>
  <input type="text" id="Results" readonly>
  <br><br>
  <input type="button" value="Calculate" id="Execute" onclick="largestOfFour()">
</form>