警报,提示和最终警报

时间:2016-04-21 12:17:08

标签: javascript html loops prompt

我无法弄清楚如何让我的代码提示用户至少3次,点击按钮仅一次,然后提示,如果用户没有输入内容然后提醒显示,再次提示,然后提醒,再次提示然后警告...一旦用户输入3次,则最终警报显示为"不再尝试!" 单击最终警报,DIV背景颜色变为灰色,是否有人可以帮助我?我知道如何将DIV背景变成灰色,我的问题是我认为应该是一个循环(提示,警报,提示,警报)



var mObjt = {
  userInput: "",

  setInput: function() {
    document.getElementById("div1").innerHTML = mObjt.userInput;
  },

  conRequest: function() {
    if (mObjt.userInput != "") {
      mObjt.setInput();
    } else {
      alert("There is no input!");
      mObjt.popRequest();
    }
  },

  popRequest: function() {
    mObjt.userInput = prompt("Enter a word:");
    mObjt.conRequest();
  }
}

<div id="div1" style="width:200px; height:30px; border:1px solid;"></div>
<button type="button" onClick="mObjt.popRequest()">Add Property</button>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您可以通过简单的循环实现它。

var prompting = function () {

    for (var i = 0; i < 3; i++) {

        mObjt.userInput = prompt("Enter a word:");

        if (mObjt.userInput == "") {

            if (i != 2) alert("You must enter a value");
            else alert("No more attempts");

        else {

            mObjt.setInput();
            return;
        }
    }
}

答案 1 :(得分:-1)

这是一个应该做你想要做的事情的脚本块。

var mObjt = {
userInput: "",

setInput: function(){
    document.getElementById("div1").innerHTML = mObjt.userInput;},

popRequest: function(){ 
var attempts = 0;

while (attempts < 3 && mObjt.userInput === "") {
    attempts++;
    mObjt.userInput = prompt("Enter a word:");
    if (mObjt.userInput === "")
        alert("You must enter a value");
}
if (mObjt.userInput === ""){
    alert("No more attempts");
    //disable work
} else {
    mObjt.setInput();
}

}}