0

最近,我们将网站从 .NET 3.5 升级到了 4.0。这样做之后,我们注意到旧版 IE 中发生了一些非常奇怪的事情。标准视图中的 IE9 按设计工作,但是,任何其他版本的 IE 在使用RequiredFieldValidator 输入asp 文本框时都会给我们一个奇怪的错误。在找到的 .NET 匿名函数中,我们得到“未找到成员”。此行的脚本错误:event = event || window.event; 我到处搜索,但没有找到解决方案。这仅在我们输入文本框时发生,并且仅在此页面上发生。任何帮助,将不胜感激。这只发生在旧版本的 IE 中,其他浏览器和 IE9 似乎可以很好地处理它。

谢谢你!

4

2 回答 2

2

您是否正在访问活动 || setTimeout 函数中的 window.event ?如果是这样,到那时,甚至可能已经丢失并且访问该事件会给您“找不到成员”错误..

于 2012-07-28T08:00:19.460 回答
0

由于您尚未发布代码,我们只能猜测发生了什么。

行抛出错误很好(假设event在函数参数中),可能错误是由下一行引起的。Member not found当您尝试检索对象的不存在属性时,IE 会抛出错误消息event

我想你的脚本中有keyup或处理程序,有这样的一行:keydown

if (event.which == 13){ ... }

但是,在较旧的 IE 中,对象中没有which属性,对应的属性是. 所以你需要同时检查:eventkeyCode

var key=event.which || event.keyCode;
if (key == 13){ ... }
于 2012-07-28T07:51:30.683 回答