我有一个使用Visual Studio 2010构建的网站(可能已升级),在Dev和Web服务器上运行.Net 3.5 SP1。
当我进入我的登录页面,开发中或我的测试服务器上时,我可以正常登录。登录页面取决于几个自动生成的JavaScript代码,我只能假设它是由Asp.Net在运行时创建的。
一种是名为__doPostBack(eventTarget, eventArgument)
的JavaScript方法。
当我进入我的Production Server上的登录页面时,登录页面不再起作用。我发现我页面中的所有JavaScript都突然消失了。
我也缺少很多ASP生成的隐藏输入元素。像,
__LASTFOCUS
__EVENTTARGET
__EVENTARGUMENT
__VIEWSTATEGENERATOR
现在,如果我启用兼容模式,它会立即返回并且工作正常。查看源代码显示我的JavaScript回来了,缺少的ASP生成的输入元素也回来了。
有人见过这个吗?
由于ASP.Net没有将IE 10视为有效的浏览器,我确实阅读了有关这是一个常见问题的文章。 Bug and Fix: ASP.Net fails to detect IE10 causing _doPostBack....是我所指的文章。
我觉得奇怪的是,KB的这篇文章指出在ie.browser文件上显示的时间戳远远超过我在开发机器上的时间戳。我的机器显示我的ie.browser文件已创建并在2009年最后一次修改。但KB的显示如果我有一个好的ie.browser文件,时间戳应该是2011年8月31日。所以我真的不知道我为什么在我的开发机器上没有这个问题。