2016-04-21 21 views
-1

新手在編程,這是我的做法的代碼,我無法弄清楚如何編寫我的概念,我不知道我是否需要使用forwhile以下要求:Javascript循環和最終警報,FOR或WHILE?

3後或5次用戶未能在提示框中輸入內容,那麼最後的警報就會顯示出「沒有更多機會!」這樣的信息了。然後打開div背景灰色。

任何幫助將受到歡迎,以幫助我改進。

JS

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(); 
    } 
} 

HTML:

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

大膽的話是我想要的。 – zankudo

+2

您可以使用for或while循環,具體取決於您的偏好。但是我建議你在問這樣的問題之前先閱讀循環的工作方式 –

+0

沒有任何想法,我想提示框給用戶5個機會,然後他失敗了,然後DIV變灰。 – zankudo

回答

0

你不應該使用任何類型的循環了點。保持一個計數器變量。每次用戶失敗時,增加計數器。當計數器達到5時,做任何需要做的事情。

var failCount = 0; 

function handleInput() { 
    // This is a totally fake example just to show you want to do 
    if(input) { 
    // Input valid, yay 
    } else { 
    // Input invalid 
    failCount++; 
    if(failCount >= 5) { 
     // Disable your stuff 
     alert('Oh no, input failed: you have no more remaining attempts'); 
    } else { 
     alert('Oh no, input failed'); 
    } 
    } 
} 
+0

假設提示只應每次點擊一次按鈕就會出現一次。這聽起來像是他希望提示在點擊後繼續最多5次,如果沒有提供一個單詞,這將需要一個循環。 – 2016-04-21 01:37:28