如果高于指定的变量javascript,则删除用户输入

时间:2015-05-19 05:51:51

标签: javascript html button input

我是一个学习HTML / CSS / Javascript的新程序员,并且在我遇到一个bug之前正在摆弄它。我正在让计算机猜测我的号码(0-5),但后来意识到如果我输入的数字高于5,网站就会崩溃。我有什么方法可以做到这一点,如果用户输入一个高于5的数字,它会自动删除它吗?或者这不是Javascript。在此先感谢:)

document.getElementById("guess").onclick=function() {

    var gotit=false;
    var guesses=1;
    var x;

    while(gotit==false) {

        x=Math.random();
        x=6*x;
        x=Math.floor(x);

        if(document.getElementById("myNumber").value==x) {
            gotit=true;
        } else {
            guesses++;
        }
    }

    alert("Got it! It was a " + x + ". It only took me " + guesses + " guesses!");

}

3 个答案:

答案 0 :(得分:2)

试试这个:

Facebook SDK 4.x (4.1) for iOS

答案 1 :(得分:1)

比定义onchange函数来检查长度:

def factorial(int factorialFor) {
    def tailFactorial = { int number, BigInteger theFactorial = 1 ->
        number == 1 ? theFactorial :
        // XXX
        trampoline(number - 1, number * theFactorial)
    }.trampoline()
    tailFactorial(factorialFor)
}
println "factorial of 5 is ${factorial(5)}"
println "Number of bits in the result is ${factorial(5000).bitCount()}"

重要

这里有一个更大的问题:您正在生成一个随机数,然后将其与输入进行比较(不会更改)。这是无限循环。因为这是一个随机操作,你可以多次击中相同的数字。

在点击quess按钮之前,您需要首先生成您的号码(在'guess'按钮上点击事件之前)。像这样:

document.getElementById("myNumber").onchange  = function (ev){
  try{ 
        var target = document.getElementById("myNumber");
        if(parseInt(target.value) > x) { // can throw exception, when given a non number
          target.value="";
        }
    } catch(ex) {
      alert('Not a number');
    }
};

但是如果你想要计算机来判断你的号码,那么你需要限制猜测次数(添加一个计数器),否则它会挂起。

答案 2 :(得分:1)

我把这作为一个小挑战,然后继续重新做了你的小游戏。希望这会有所帮助。

Demo here

NetworkViewModel