javascript – select标签的document.getElementById在IE中给出了对象错误

我在 HTML和Internet Explorer中有一个select标签,当从 JavaScript函数调用它时会发生错误.

这是html创建的选择框 –

<select id="item1" name="Item 1" onchange ="fn();">  
    <option value="0">Please select gender</option>    
    <option value="1">Male</option> 
    <option value="2">Female</option>  
 </select>

选择的onchange事件的函数

function fn()
{   
    var s = document.getElementById('item1');  
    if(s!= null)  
    {  
       alert('not null')  //if object not == null  
    }  
}

这是我在IE中遇到的错误

Message: Object expected

解决方法

为什么你得到了domNode,如果它已经激活了这个函数?如果domNode为null(不存在),那么onChange不会被解雇吗?

这个怎么样:

HTML

<select id="item1" name="item1" onchange ="fn(e);">  
       <option value="0">Please select gender</option>    
       <option value="1">Male</option> 
       <option value="2">Female</option>  
    </select>

JS

function fn(event) {
       // FF,Safari etc..
       if(event.target) {  
           alert('fn() fired by ' + event.target.id)
       }
       // IE
       else if(event.srcElement) {
           alert('fn() fired by ' + event.srcElement.id)
       }
    }

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...