0

主要思想是尝试使用多个 ID禁用多个复选框,例如使用 documentGetElementById

每个 id 属于一个复选框

function main(){
var a = document.getElementById("actual").value;
var b = document.getElementById("destination").value;

if (a == "Jamaica" && b == "Paris"){
document.getElementById("A", "B", "C", "D").disabled = true; // occupied seats
}
}

4

2 回答 2

1

getElementById只接受一个参数,因此,你应该这样做:

let ids = ["A", "B", "C", "D"];
for(let i = 0; i < ids.length; i++)
     document.getElementById(ids[i]).disabled = true; // occupied seat
于 2020-04-22T09:01:55.517 回答
1

你有三个选择:

1.) 多次通话

document.getElementById("A").disabled = true;
document.getElementById("B").disabled = true;
// and so on...

2.) 循环遍历 ID

["A", "B", "C", "D"].forEach(id => document.getElementById(id).disabled = true)

3.) 你找到一个匹配所有这些的选择器并使用document.querySelectorAll. ID 必须是唯一的,所以这还不够,但假设页面上的所有复选框都需要禁用:

document.querySelectorAll("input[type='checkbox']").forEach(elem => elem.disabled = true);

对于此选项,您也可以使用其他 CSS 选择器来选择所需的复选框,例如类名。

于 2020-04-22T09:04:03.833 回答