【问题标题】:Trying to print the right answer in Javascript using getElementById尝试使用 getElementById 在 Javascript 中打印正确答案
【发布时间】:2016-09-18 16:17:07
【问题描述】:

我试图找出一个数字是否是一个完美的数字,但我无法正确打印它。数字 6、496、8128 是完美数字,但当我输入这些数字时,它一直从 var res2 打印,而不是 var res1。这里有什么问题,谁能帮忙?

function perfectNo(number) {
  var temp = 0;
  var res1 = "It is a perfect number";
  var res2 = "It is not a perfect number";
  for (var i = 1; i <= number / 2; i++) {
    if (number % i == 0) {
      temp += i;
    }
  }

  if (temp == number && temp != 0) {
    document.getElementById("results").innerHTML = res1;
  } else {
    document.getElementById("results").innerHTML = res2;
  }
}
<input id="num">
<input type="button" onclick="perfectNo()" value="check">
<br>
<p>Answer:</p>
<p id="results"></p>
<br>

【问题讨论】:

  • 在您的代码中,您的函数需要一个参数,该数字尚未发送
  • 现在很明显...谢谢。

标签: javascript printing getelementbyid perfect-numbers


【解决方案1】:

尝试:

var number = document.getElementById("num").value;

像这样:

function perfectNo() {
  var number = document.getElementById("num").value;
  console.log(number);
  var temp = 0;
  var res1 = "It is a perfect number";
  var res2 = "It is not a perfect number";
  for (var i = 1; i <= number / 2; i++) {
    if (number % i == 0) {
      temp += i;
    }
  }

  if (temp == number && temp != 0) {
    document.getElementById("results").innerHTML = res1;
  } else {
    document.getElementById("results").innerHTML = res2;
  }
}
<input id="num">
<input type="button" onclick="perfectNo()" value="check">
<br>
<p>Answer:</p>
<p id="results"></p>
<br>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-23
    • 2021-02-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多