我正在做一個基本的(因爲我不熟練,就像玩弄小東西學習)數據庫項目,通過檢查複選框來設置。但是,當試圖檢查一個盒子並閱讀是否檢查或未檢查時,它總是讀取「空白」。我試過。價值,.innerHTML和。選中。沒有什麼讓我在那裏。我所要做的就是用getElementById獲取輸入(即檢查或不檢查)並將其存儲在var中,然後在比較布爾爲true時進行比較,並相應地設置數據庫中的值。無法讀取value值爲innerHTML的複選框的值,或者選中
function createSheet() {
var _container = document.getElementById("container");
checkbox = document.createElement("input");
checkbox.type = "checkbox";
var valueOfId = document.getElementById("idString").checked;
錯誤信息:無法讀取'檢查'爲null的屬性。
編輯:謝謝你的答案!我沒有表現出這些行,因爲我沒想到他們要緊的是多了,但我錯了,所以在這裏,他們是:
function createSheet() {
var _container = document.getElementById("container");
for (var i = 0; i < 4; i++) {
p = document.createElement("p");
spanBird = document.createElement("span");
checkbox = document.createElement("input");
checkbox.type = "checkbox";
checkbox.id = "myCheck" + i;
checkbox.value = 0;
checkbox.checked = birds.birdList[i].seen;
spanBird.innerHTML = birds.birdList[i].name;
p.appendChild(spanBird);
p.appendChild(checkbox);
container.appendChild(p);
console.log(document.getElementById("myCheck" + i));
document.getElementById("myCheck" + i).addEventListener("click", readBox);
}
}
function readBox(){
getId();
theId = theId.substring(7);
console.log("idString: " + idString);
var valueOfId = document.getElementById("idString").checked;
}
和HTML寫着:
<section id="container">
</section>
/EDIT
有什麼建議嗎?
「_any建議?_」 爲我們提供了一個[MCVE。 – csmckelvey
您創建了一個輸入,將其類型更改爲複選框,但從未爲其分配過一個ID ....然後試圖通過一個ID獲取元素?因此id = idString的元素爲空 –