首先,在你的HTML你有兩個元素。在JavaScript中,最簡單的方法是獲取並保存對兩者的引用。
var box = document.getElementById('box');
var checkbox = document.getElementById('check');
然後,您需要監聽對複選框的更改。沒有「檢查」事件,所以您需要聽取任何「更改」。
// Put the 'event listener' on the 'check' element.
// It will run when the checkbox changes (is checked or unchecked)
checkbox.addEventListener('change', function(){
alert('changed');
});
最後事件偵聽器中,您可以添加更多的代碼來進行檢查,看是否複選框的狀態進行檢查。
checkbox.addEventListener('change', function(){
alert('changed');
// The checkbox element 'check' has a property 'checked' that you can access
// If it is checked set the color one way, otherwise the other.
if(checkbox.checked) {
box.style.backgroundColor = 'red';
} else {
box.style.backgroundColor = 'lightblue';
}
});
Here is a fiddle
如需進一步閱讀,你可以查看getElementById和EventListeners和Style Object
作爲一個說明你的JavaScript
if (document.getElementById("check".checked = "true")) {
document.getElementById("box").style.visibility = "hidden";
}
中的代碼IF語句是正確的。 IF聲明本身試圖一次做太多事情。你可能忘記了一對右括號或把它放在錯誤的地方。但是你也可以忽略明確的'真實'檢查。嘗試將下面的代碼放在事件監聽器中。
if (document.getElementById("check").checked) {
document.getElementById("box").style.visibility = "hidden";
}
來源
2015-11-16 19:58:33
Ben
請在問題中發佈您的代碼。 –
'document.getElementById(「check」.checked =「true」)' 如果您認爲這是該代碼的唯一問題,那麼您需要在if語句中使用雙重== == –
@SalminSkenderovic您可能需要注意當它到來時的答案。 –