IE6与IE8运行JS时的一个差异

来源:互联网 发布:查看淘宝店铺注册时间 编辑:程序博客网 时间:2024/05/29 09:02

刚刚解决了一个JSP WEB开发的小问题,说明如下:

 

遇到的问题:

同一个JSP代码,同一台服务器,用IE6访问,运行正常,但用IE8访问则出现异常。

 

调查结果:

我们使用了struts标签:<html:hidden property="conditionStr"/>

又在js中使用document.getElementById("conditionStr").value取值。

 

出问题的原因是:

<html:hidden property="conditionStr"/>编译后,发到客户端的HTML是

<input type="hidden" name="conditionStr" value="">

 

在IE6里document.getElementById("conditionStr")可以取到这个控件,

但IE8里用这个语句就取不到了。

 

也就是说IE6中getElementById(***)的机制是,找不到与***相同的id时,会去找相同name的控件,

但IE8中getElementById(***)只找相同id的。

 

以前的项目在IE8推广后,要大面积修改了。

原创粉丝点击