This question already has answers here:
Javascript Code works in jsfiddle and but not in the Browser [closed]
(2个答案)
3年前关闭。
尝试访问HTML中的元素时,我的代码当前返回null。奇怪的是,在JSFiddle中进行测试时,它工作得很好。这是jsfiddle链接的副本:http://jsfiddle.net/6f77q/115/。
这是我在计算机上的两个单独文件中完成的操作:
index.html
some.js
我对为什么阳极返回null感到非常困惑。有什么想法为什么可能在JSFiddle中而不是在本地工作时发生?
谢谢!
(2个答案)
3年前关闭。
尝试访问HTML中的元素时,我的代码当前返回null。奇怪的是,在JSFiddle中进行测试时,它工作得很好。这是jsfiddle链接的副本:http://jsfiddle.net/6f77q/115/。
这是我在计算机上的两个单独文件中完成的操作:
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);
}
我对为什么阳极返回null感到非常困惑。有什么想法为什么可能在JSFiddle中而不是在本地工作时发生?
谢谢!
最佳答案
将代码包装在domready / onload事件中,您的代码尝试执行,但是页面上尚不包含元素,因此脚本无法执行您想要的操作,domready / onload事件使您可以在所有元素之后执行代码已正确添加到页面