尝试使用while循环打印输入文本,即用户在secound输入中写入的次数

时间:2017-09-23 20:01:11

标签: javascript while-loop

我有两个输入字段和一个按钮。当用户单击该按钮时,我希望它显示用户在第一次输入中写入的文本,即用户在第二个输入中写入的次数。

我知道你必须使用while循环。我在这里做错了什么?

<!DOCTYPE html>
<html>

<head>
  <title>While Loop</title>
  <script type="text/javascript">
    window.onload = btn;

    function btn() {
      document.getElementById("btn").onclick = showText;
    }

    function showText() {
      var text = "";
      var inputOne = document.getElementById("txtBox").value;
      var inputTwo = document.getElementById("numBox").value;
      while (inputOne < inputTwo) {
        text += inputOne;
        inputOne++;
      }
      document.getElementById("showCode").innerHTML = text;
    }
  </script>
</head>

<body>

  <input type="text" id="txtBox"><br/>
  <input type="number" id="numBox"><br/>
  <button type="button" id="btn">Click Me!</button>
  <p id="showCode"></p>
</body>

</html>

3 个答案:

答案 0 :(得分:0)

由于inputOne是一个文字,你不能递增它(你不能inputOne++),而是使用另一个变量,让它称之为i ,控制while循环:

&#13;
&#13;
window.onload = btn;

function btn() {
  document.getElementById("btn").onclick = showText;
}

function showText() {
  var text = "";
  var inputOne = document.getElementById("txtBox").value;
  var inputTwo = document.getElementById("numBox").value;
  var i=1; // to control the loop
  while (i <= inputTwo) {    // i goes from 1 to inputTwo
    text += inputOne;
    i++;
  }
  document.getElementById("showCode").innerHTML = text;
}
&#13;
<input type="text" id="txtBox"><br/>
<input type="number" id="numBox"><br/>
<button type="button" id="btn">Click Me!</button>
<p id="showCode"></p>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

这是我的解决方案

package CS1301;

public class Homework4 {

    public static void Questions(int value) {
        if (value > 0) {
            int count = 1;

            while (count <= value) {
                if (value % count == 0) {
                    System.out.println(count);
                }  

                count = count ++;
            }
        }
    }

    public static void main(String[] args) {
        Questions(5);
    }
}

答案 2 :(得分:0)

您可以使用for循环代替while循环:

for( let i = inputTwo; i>0; i--) {
    text += inputOne;
}