刚刚解决了一个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推广后,要大面积修改了。