JavaScript:即使用户输入不正确,也会显示两个对话框
这是一个简单的JavaScript/HTML猜测游戏。我唯一的问题是,当用户输入除1-6以外的数字/字母时,会弹出“错误”消息 — 确实如此,但游戏继续进行,它仍然会告诉你你是否是赢家。这是我的密码JavaScript:即使用户输入不正确,也会显示两个对话框,javascript,Javascript,这是一个简单的JavaScript/HTML猜测游戏。我唯一的问题是,当用户输入除1-6以外的数字/字母时,会弹出“错误”消息 — 确实如此,但游戏继续进行,它仍然会告诉你你是否是赢家。这是我的密码 function jsFunc() { var number = Math.ceil (Math.random() * 6) + 1; var guessNum = 0; guessNum = document.getElementById("num").value;
function jsFunc() {
var number = Math.ceil (Math.random() * 6) + 1;
var guessNum = 0;
guessNum = document.getElementById("num").value;
if (isNaN(guessNum) || guessNum < 1 || guessNum > 6) {
alert ("Must be a number between 1 and 6. Please re-enter!");
}
if (number == guessNum)
alert("Congratulations, You Win!!!");
else
alert("Aw, You Lose..");
}
函数jsFunc(){
var number=Math.ceil(Math.random()*6)+1;
var-guessNum=0;
guessNum=document.getElementById(“num”).value;
如果(isNaN(guessNum)| | guessNum<1 | | guessNum>6){
警报(“必须是介于1和6之间的数字。请重新输入!”);
}
if(number==guessNum)
警惕(“祝贺你,你赢了!!!”;
其他的
警惕(“啊,你输了……”);
}
如果出现以下情况,您应该执行其他操作
function jsFunc() {
var number = Math.ceil (Math.random() * 6) + 1;
var guessNum = 0;
guessNum = document.getElementById("num").value;
if (isNaN(guessNum) || guessNum < 1 || guessNum > 6) {
alert ("Must be a number between 1 and 6. Please re-enter!");
}
else if (number == guessNum)
alert("Congratulations, You Win!!!");
else
alert("Aw, You Lose..");
}
函数jsFunc(){
var number=Math.ceil(Math.random()*6)+1;
var-guessNum=0;
guessNum=document.getElementById(“num”).value;
如果(isNaN(guessNum)| | guessNum<1 | | guessNum>6){
警报(“必须是介于1和6之间的数字。请重新输入!”);
}
else if(number==guessNum)
警惕(“祝贺你,你赢了!!!”;
其他的
警惕(“啊,你输了……”);
}
if(isNaN(guessNum)| | guessNum<1 | | guessNum>6){
警报(“必须是介于1和6之间的数字。请重新输入!”);
}
else if(number==guessNum)
{
警惕(“祝贺你,你赢了!!!”;
}
其他的
{
警惕(“啊,你输了……”);
}
if/else逻辑需要是一个连续的块。因为在您的原始代码中,您的第二个IF无论发生什么都会得到评估 您只需添加if-else即可 请参考代码片段 函数jsFunc(){ var number=Math.ceil(Math.random()*6)+1; var-guessNum=0; guessNum=document.getElementById(“num”).value; 如果(isNaN(guessNum)| | guessNum<1 | | guessNum>6){ 警报(“必须是介于1和6之间的数字。请重新输入!”); }else if(number==guessNum){ 警惕(“祝贺你,你赢了!!!”; } 否则{ 警惕(“啊,你输了……”); } }
提交
您是否尝试在警报后使用返回
返回?非常感谢!感谢您的回复。如果这对您有帮助,请标记为正确答案!谢谢你,迪拉杰!
if (isNaN(guessNum) || guessNum < 1 || guessNum > 6) {
alert ("Must be a number between 1 and 6. Please re-enter!");
}
else if (number == guessNum)
{
alert("Congratulations, You Win!!!");
}
else
{
alert("Aw, You Lose..");
}