javascript - if 和 else 语句条件值未被识别
问题描述
我正在尝试创建一个代码块,该代码块接受用户输入值并将其与页面加载时生成的随机数进行比较。现在,无论条件的值是什么,guess 函数中的 if 语句都会显示。如果它们是真的,它会显示第一条和第三条消息,如果是错误的,它也会显示这两条。我应该对我的代码进行哪些更改,以便让 if 语句提醒与用户输入值相关的正确响应。
<html>
<head>
<script>
window.addEventListener("DOMContentLoaded", setup);
void setup(); {
var rNumber1 = Math.random(1-100);
var rNumber = Math.floor(rNumber1);
}
</script>
</head>
<body>
<form>
<table>
<tr><td><label>Enter Guess:</label></td><td><input id="guessedNumber" type="text" /></td></tr>
<tr><td><label>Is Correct?: </label></td><td><label id="guessResult"></label></td></tr>
<tr><td> </td><td><button type="button" onclick="guess()">Submit Guess</button></td></tr>
</table>
</form>
<script>
function guess() {
var guessedNumber = document.getElementById("guessedNumber");
if (guessedNumber != rNumber) {
alert("Your guess is incorrect. Try Again!");
} else if (guessedNumber == NaN) {
alert("Please enter a valid Number");
} else (guessedNumber == rNumber)
alert("You guessed correctly!");
}
</script>
</body>
</html>
解决方案
使用从输入框中获取的值.value
另外,我在 else 语句中没有看到任何左括号,并在 else 语句中删除了条件。
setup() 没有在任何地方定义,所以我不知道你想用它做什么
<html>
<head>
<script>
//window.addEventListener("DOMContentLoaded", setup);
//void setup(); {
//var rNumber1 = Math.random(1-100);
var rNumber = Math.floor(Math.random() * 100) + 1
//}
</script>
</head>
<body>
<form>
<table>
<tr><td><label>Enter Guess:</label></td><td><input id="guessedNumber" type="text" /></td></tr>
<tr><td><label>Is Correct?: </label></td><td><label id="guessResult"></label></td></tr>
<tr><td> </td><td><button type="button" onclick="guess()">Submit Guess</button></td></tr>
</table>
</form>
<script>
function guess() {
console.log(rNumber);
var guessedNumber = parseInt(document.getElementById("guessedNumber").value);
if (guessedNumber != rNumber) {
alert("Your guess is incorrect. Try Again!");
} else if (guessedNumber == NaN) {
alert("Please enter a valid Number");
} else {
alert("You guessed correctly!");
}
}
</script>
</body>
</html>
推荐阅读
- html - CSS响应式修复帮助
- php - 为什么我在 php 中得到这个“未定义的变量”错误
- ubuntu - 卡尔达诺节点(标签版本 1.27.0)WSL 上的“cabal build all”错误
- javascript - 我有来自 firebase 的 20k++ 数据会减慢我的网络速度,如何提高效率?
- java - 将 dukes 版本升级到 1.6.19.raptorio 时出现 ClassNotFoundException
- java - 在Java中传递参数后如何更改对象的值?
- gstreamer - gstreamer 没有找到我想要的帽子
- spring-boot - 如何更新 sitemap.xml
- winforms - 有条件地显示 WinForms UserControl 的属性?
- mongodb - 在 MongoDB Bitnami Replicaset 架构中配置 Oplog 大小