现在我想使用“check / unchecked checkbox”作为“IF条件语句”。
示例:我想根据您点击的音符制作和弦分析器。当你选中复选框上的一个音符(或一些音符),然后按下这些复选框下面的按钮,段落元素应该告诉你你击中了什么和弦。但是我在if ("error")
声明中写错了。如何解决?
这是我的代码:
<!doctype html>
<html>
<head>
<script>
function fungsi() {
var c = document.getElementById("C").checked;
var e = document.getElementById("E").checked;
var f = document.getElementById("F").checked;
var g = document.getElementById("G").checked;
if (c.checked = true &&
e.checked = true &&
g.checked = true &&
f.checked = false) {
document.getElementById("chord").innerHTML = "C Chord";
} else if (c.checked = true &&
f.checked = true &&
g.checked = false &&
e.checked = false) {
document.getElementById("chord").innerHTML = "F Chord";
} else {
alert("Under Development!");
}
}
</script>
</head>
<body>
<form>
Note(s) That You Hit:<br>
<input type=checkbox id="C">C<br>
<input type=checkbox id="E">E<br>
<input type=checkbox id="F">F<br>
<input type=checkbox id="G">G
</form>
<button type=button onclick="fungsi()">The Chord Is</button>
<p id="chord"></p>
</body>
</html>
答案 0 :(得分:2)
if (c.checked=true)
和类似的应该只是if (c.checked)
。
if (f.checked=false)
和类似的应该只是if (!f.checked)
。
如果您愿意,可以if (c.checked==true)
或if (c.checked===true)
,同样if (f.checked==false)
或if (f.checked===false)
,但绝大部分时间都没有意义。你已经一个布尔值。只需if (c.checked)
和if (!f.checked)
即可。
E.g:
if (c.checked &&
e.checked &&
g.checked &&
!f.checked) {
document.getElementById("chord").innerHTML = "C Chord";
}
另外,作为crclayton points out,您要么:
var c=document.getElementById("C").checked;
var d=document.getElementById("E").checked;
// ...and so on..., and then:
if (c && e && g && !f)
或
var c=document.getElementById("C"); // <== No .checked
var d=document.getElementById("E"); // <==
// ...and so on..., and then:
if (c.checked &&
e.checked &&
g.checked &&
!f.checked) {