我在
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) } }