我想制作一个缺少文字的游戏,您必须从其中几个中选择正确的缺少文字。 例如。 “太阳 _____。” A.光芒 B.闪耀 C.闪闪发光。
此后,应该有一个按钮,用于将丢失的单词的颜色更改为绿色(如果正确)和红色(错误)。
我试图做出if else声明,但我认为我还不够好
function myFunction() {
if (document.getElementById("demo") = "shines") {
document.getElementById("demo").style.color = "green";
} else {
document.getElementById("demo").style.color = "red";
}
}
<p>1. The Sun
<select>
<option id="demo" value="shine">shine</option>
<option id="demo" value="shining">shining</option>
<option id="demo" value="shines">shines</option>
</select>
</p><button onclick="myFunction()">Check!</button>
我如何使其工作?
答案 0 :(得分:2)
问题在这里:
您的if
语句正在分配而不是相等
这有1个=
符号
if (document.getElementById("demo").value = "shines")
应该是这样的:
if (document.getElementById("demo").value == "shines")
demo
元素设置为
id而不是<select/>
?您可能要检查:
<option/>
以下代码正在运行,可以帮助您继续前进:
document.getElementById("demo").value
function myFunction() {
if (document.getElementById("demo").value == "shines") {
document.getElementById("demo").style.color = "green";
} else {
document.getElementById("demo").style.color = "red";
}
}
答案 1 :(得分:-1)
您应该使用.value
元素上的<select>
而不是<option>
来检查值,其次,您应该与===
或==
进行比较,不适用于=
function myFunction() {
if (document.getElementById("demo").value === "shines") {
document.getElementById("demo").style.color = "green";
} else {
document.getElementById("demo").style.color = "red";
}
}
<!DOCTYPE html>
<html>
<head>
<title>Present Simple</title>
</head>
<body>
<p>1. The Sun
<select id="demo">
<option value="shine">shine</option>
<option value="shining">shining</option>
<option value="shines">shines</option>
</select>
</p><button onclick="myFunction()">Check!</button>
</body>
</html>