2017-08-25 61 views
0
document.getElementById("cbox0").checked = true; 

我使用這個語句自動選中一個複選框,但我得到類型錯誤:無法設置屬性空的「檢查」的複選框此錯誤。我試圖用if語句來檢查它是否不爲null,但它也給了我相同的錯誤。類型錯誤:不能設置爲空的特性「檢查」複選框爲

jsp+='<input id="cbox'+index+'" type="checkbox" name="compare" value="'+rightCard.oid+'" onchange="myFunction('+index+')"><label for="cboxCard'+index+'">&nbsp;</label>'; 

回答

0

可能有2個可能的問題。

  1. 沒有複選框id作爲cbox0。因此,getElementById回報null,導致你的錯誤
  2. JavaScript是您的複選框前執行加載到DOM。您可以通過包裝一個DOMContentLoaded事件監聽器裏的代碼解決這個問題,這樣

document.addEventListener("DOMContentLoaded", function() { 
 
    document.getElementById("cbox0").checked = true; 
 
});
<input id="cbox0" type="checkbox" name="compare" value="test">

注意,上面的代碼片段工作,即使沒有在計算器上的事件監聽器。這可能是因爲StackOverflow上的段運行時,它的JavaScript相似,我寫的是什麼。

0

將您的代碼包含在onload事件中。

+0

這並不提供答案的問題。以批判或作者作出澄清,離開低於其信息的評論中。 - [評分](/審查/低質職位/ 17139601) – thomaux

相關問題