0
當試圖訪問HTML中的元素時,我的代碼當前返回null。奇怪的是,它在JSFiddle中測試時工作得很好。以下是jsfiddle鏈接的副本:http://jsfiddle.net/6f77q/115/。getElementById在本地測試但在JSFiddle中工作時返回null
這是我在兩個單獨的文件已經做了我的電腦上:
的index.html
<script src="some.js"></script>
<select id="theid" name = "navyOp" onchange="test(this);">
<option selected = "selected">Select a Navy Op Area</option>
<option value = "AN01">AN01</option>
<option value = "AN02">AN02</option>
<option value = "AN03">AN03</option>
</select>
some.js
var earrings = document.getElementById('theid');
var anode=document.createElement("option");
anode.text="hello";
earrings.add(anode);
window.test = function(e){
alert(e.value);
}
我,爲什麼真糊塗陽極返回空。任何想法,爲什麼這可能發生在JSFiddle中但不在本地工作的地方?
謝謝!
您在jsfiddle中編寫的腳本默認在'onload'回調中執行。但是,您將腳本放在包含'theid'的html代碼之前,以便在執行'document.getElementById('theid');'時,包含'theid'的html不被解析並且元素'theid'爲不在DOM中。 –
@ t.niese - 你的評論是更具描述性的_than_答案:P – Rayon
我有一種感覺是這個問題,所以我所做的就是複製