javascript - 如何在 jQuery 中设置表单提交时间限制

标签 javascript jquery html

我正在创建一个小游戏:“猜一个数字”
这是jsFiddle中的代码:Guess Number
我想要的是设置猜测时间的限制,7次错误后,游戏结束。
我尝试在表单提交中放入 while ,但我不知道如何在下一次提交时暂停循环。
html:

var resultat = Math.floor(Math.random() * 100) + 1;
$('div').html("( answer is : " + resultat + " )");

$('form').on('submit', function (e){
    e.preventDefault();
    var inputVal = $('#number').val();
    var nbInput = Number(inputVal);
    
    if(nbInput !== resultat){
        if (nbInput < resultat) {
            $('h2').html(inputVal + ' is too small');
        }else{
            $('h2').html(inputVal + ' is too big');	
        };
    }else{
    	$('h2').html('Yes! ' + inputVal + ' is the right number');
    };

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Let's Guesse Number</h1>
<form>
    <p>Enter the number between 1 and 100</p>
    <input id="number" name="number" type="text">
    <input type="submit">
</form>
<div></div>
<h2></h2>

最佳答案

这应该可以解决问题:

var limitCounter = 0;
var gussedRight = false;
var resultat = Math.floor(Math.random() * 100) + 1;
$('div').html("( answer is : " + resultat + " )");

$('form').on('submit', function (e){
    if(limitCounter > 7) {
       if(!gussedRight)
           $('h2').html('You are out of gusses');
       return;
    }

    e.preventDefault();
    var inputVal = $('#number').val();
    var nbInput = Number(inputVal);

    if(nbInput !== resultat){
        if (nbInput < resultat) {
            $('h2').html(inputVal + ' is too small');
        }else{
            $('h2').html(inputVal + ' is too big');	
        };
    }else{
        gussedRight = true;
    	$('h2').html('Yes! ' + inputVal + ' is the right number');
    };
    limitCounter++;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Let's Guesse Number</h1>
<form>
    <p>Enter the number between 1 and 100</p>
    <input id="number" name="number" type="text">
    <input type="submit">
</form>
<div></div>
<h2></h2>

关于javascript - 如何在 jQuery 中设置表单提交时间限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38274792/

相关文章:

javascript - 单击以播放/暂停在 Mozilla 中不起作用

javascript - 修改影子根中自定义元素的样式

javascript - 将 YYYYMMDDHHMMSS 格式化为 YYYY/MM/DD HH :MM:SS

jquery - 具有不同布局选项的响应表

javascript - jQuery live() 在 Firefox 中不显示文本光标

html - 如何用纯css设计类似大网站

javascript - Google 地方信息自动完成 : rectangular bounds vs radius

php - jQuery AJAX上传系统IE问题

javascript - 如何删除jquery中先前绑定(bind)的事件

css - HTML 5 Section/Aside 边距问题