今天使用javascript进行前端编程时遇到一个问题,代码如下:
function nameAdd (name) { if (document.getElementById(name).innerHTML=='') { document.getElementById(name).innerHTML+=document.getElementsByName(name)[0].value } else { document.getElementById(name).innerHTML+=','+document.getElementsByName(name)[0].value } }
注意我用红色标识的地方,如果我们从0开始计数,那么在IE8中将会发现,我们取得的元素的value为undefined,而如果到了谷歌和火狐浏览器中,我们使用[1]则无法取到元素的值,js代码就没有效果了。
总结一下:IE8和火狐、谷歌在按name取元素的时候,IE8从0开始,谷歌、火狐从1开始取!