Ker*_*vvv 4 html javascript if-statement
我有这个工作,但我没有保存,无法复制.我正在尝试使用切换复选框if else
.我究竟做错了什么.
我认为会起作用:
function myForm() {
var inputs = document.getElementsByTagName("input");
for(var i = 0; i < inputs.length; i++) {
if(inputs[i].type == "checkbox") {
if(inputs[i].checked = false) {
inputs[i].checked = true;
} else {
if(inputs[i].checked = true) {
inputs[i].checked = false;
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
Ali*_*ahi 36
它可以更容易:
inputs[i].checked = !inputs[i].checked;
Run Code Online (Sandbox Code Playgroud)
Ale*_*ies 11
这个版本很短,"看起来"更像是一个切换:
inputs[i].checked ^= 1;
Run Code Online (Sandbox Code Playgroud)
这使用了XOR Compound赋值运算符,因为它可以用于否定¬A ? A ^ 1
.它也不需要inputs[i]
第二次查找.
单等号是分配,双/三等号是相等。您需要在if / else块中使用双倍或三倍等于。
if(inputs[i].checked == false) {
inputs[i].checked = true;
}
else {
if(inputs[i].checked == true) {
inputs[i].checked = false;
}
}
Run Code Online (Sandbox Code Playgroud)