榎目贵音
2016-03-31 17:12
function getnum(){
var mynode=document.getElementsByName("myt");
document.write(mynode.length);
alert(mynode.length);
}
为什么document.write输出出来是0呢?
如果把document.write和alert换一下顺序两个都是输出的6
对滴,文档加载完毕后使用document.write()会覆盖页面。
代码的顺序是
document.write(mynode.length);
alert('mynode.length');
也就是说在执行到document.write(mynode.length);这条代码时,显示屏的结果就已经是mynode.length的结果6了,而body标签里的input文本框就都被覆盖了,所以当代码执行到alert('mynode.length')时,显示屏上只有数字6,因此结果为0
表示还是不懂为什么alert(mynode.length);输出来的是0,
原来是输出document的时候覆盖了body里面的input这些元素了,怪不得输出出来是0
如果删除alert(mynode.length);输出三次 document.write(mynode.length);的话,就会得到6 0 0的结果,为什么后面两次document是0呢?
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题