2017-09-04 41 views
-1

我試圖寫一個簡單的程序,其中有一個確認窗口,詢問你是否要玩遊戲。如果您點擊是,您需要輸入您的姓名和年齡。有一些驗證這些問題,如果用戶輸入一個空字符串,直到確認條件滿足返回到同樣的問題。多個提示問題

但該程序的年齡被輸入後剛剛關閉。

我的目標是有一個確認彈出再次詢問用戶是否要玩遊戲(再次)。

我該如何做到這一點?

var play = confirm('Do you want to play?'); 
 
\t 
 
\t while(play){ 
 
\t \t var name = prompt('Please enter your name'); 
 
\t \t 
 
\t \t if(name == ''){ 
 
\t \t \t alert('Please Enter a valid name') 
 
\t \t }else{ 
 
\t \t \t alert("The name is " + name); 
 
\t \t \t break; 
 
\t \t } 
 
\t } 
 
\t 
 
\t while(play){ 
 
\t \t var age = prompt('Please enter your age'); 
 
\t \t 
 
\t \t if(age == ''){ 
 
\t \t \t alert('Please enter valid age'); 
 
\t \t }else{ 
 
\t \t \t alert('Age is ' + age); 
 
\t \t } 
 
\t }

+0

的while循環裏面不應該使用遊戲來....玩不循環,姓名和年齡內改變做.... – epascarello

+0

測試只是一個空字符串ISN」噸不夠的,因爲如果用戶點擊了取消按鈕'提示()''返回null'而非'「」'。 – nnnnnn

回答

0

,你可以在這裏使用另一個while循環,並添加play = confirm('Do you want to play?')作爲循環的條件。另外請注意,代碼中的年齡循環是無限的,因此您需要在那裏使用break。

var play; 
 
while(play = confirm('Do you want to play?')){ 
 

 
while(play){ 
 
    var name = prompt('Please enter your name'); 
 

 
    if(name == ''){ 
 
     alert('Please Enter a valid name') 
 
    }else{ 
 
     alert("The name is " + name); 
 
     break; 
 
    } 
 
} 
 

 
while(play){ 
 
    var age = prompt('Please enter your age'); 
 

 
    if(age == ''){ 
 
     alert('Please enter valid age'); 
 
    }else{ 
 
     alert('Age is ' + age); 
 
     break; 
 
    } 
 
} 
 
}

+0

太棒了!非常感謝您的幫助! –