Tom*_*son 3 asp.net iis webforms windows-server-2003 internet-explorer-11
我遇到了在Windows Server 2003上运行的IE11和ASP.NET Web窗体(.NET 4.0)的问题.在IE11上,以下脚本标记未出现在源HTML中:
<script src="/ScriptResource.axd?d=WYhXIHdkh3HFOMewc5Dscl74H0FlrdD4oOAIu08capt3uxzykhWmBntlCyp0ApmvoCoZjoSCP5s1mUjzhOe99tXFvkHJ2vmkIMEuekr4y9dZdi8--YB4rXK6XO-b-mgnKReGNiAy9wDYm6lNNWWtBg2&t=ffffffffbd2983fc" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)
随后IE11报道:
Unable to get property 'PageRequestManager' of undefined or null reference
Run Code Online (Sandbox Code Playgroud)
它适用于所有其他浏览器.
我想这与浏览器定义有关.任何人都知道如何解决这个问题?
更新:
该网站使用Windows 7和Visual Studio 2013以及.NET 4.5.1在我的本地计算机上运行.
您无法在Windows Server 2003上安装.NET 4.5或4.5.1,因此我们无法使用这些软件包更新服务器,但我们必须使用.NET 4.0.
此外,似乎服务器将浏览器识别为低级浏览器,因为"Auto"上的会话cookie支持将模式设置为"cookieless",因此cookie被写为URL的一部分.
希望这些信息能帮助我们解决问题.
谢谢!
我们最终找到了以下问题的答案:
IE11 Preview中未定义'WebForm_DoPostBackWithOptions'
我们在App_Browsers中有CSSFriendlyAdapters.browser文件,导致了这个问题.
我们不得不
1)创建ie11.browser文件如下:
<browsers>
<browser id="IE11" parentID="Mozilla">
<identification>
<userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
<userAgent nonMatch="IEMobile" />
</identification>
<capture>
<userAgent match="Trident/(?'layoutVersion'\d+)" />
</capture>
<capabilities>
<capability name="browser" value="IE" />
<capability name="layoutEngine" value="Trident" />
<capability name="layoutEngineVersion" value="${layoutVersion}" />
<capability name="extra" value="${extra}" />
<capability name="isColor" value="true" />
<capability name="letters" value="${letters}" />
<capability name="majorversion" value="${major}" />
<capability name="minorversion" value="${minor}" />
<capability name="screenBitDepth" value="8" />
<capability name="type" value="IE${major}" />
<capability name="version" value="${version}" />
</capabilities>
</browser>
<!-- Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11,0) like Gecko -->
<browser id="IE110" parentID="IE11">
<identification>
<capability name="majorversion" match="11" />
</identification>
<capabilities>
<capability name="ecmascriptversion" value="3.0" />
<capability name="jscriptversion" value="5.6" />
<capability name="javascript" value="true" />
<capability name="javascriptversion" value="1.5" />
<capability name="msdomversion" value="${majorversion}.${minorversion}" />
<capability name="w3cdomversion" value="1.0" />
<capability name="ExchangeOmaSupported" value="true" />
<capability name="activexcontrols" value="true" />
<capability name="backgroundsounds" value="true" />
<capability name="cookies" value="true" />
<capability name="frames" value="true" />
<capability name="javaapplets" value="true" />
<capability name="supportsCallback" value="true" />
<capability name="supportsFileUpload" value="true" />
<capability name="supportsMultilineTextBoxDisplay" value="true" />
<capability name="supportsMaintainScrollPositionOnPostback" value="true" />
<capability name="supportsVCard" value="true" />
<capability name="supportsXmlHttp" value="true" />
<capability name="tables" value="true" />
<capability name="supportsAccessKeyAttribute" value="true" />
<capability name="tagwriter" value="System.Web.UI.HtmlTextWriter" />
<capability name="vbscript" value="true" />
</capabilities>
</browser>
</browsers>
Run Code Online (Sandbox Code Playgroud)
2)然后从bin目录中删除__browserCapabilitiesCompiler.compiled.
现在一切正常!
我希望这也有助于其他有同样问题的人!
| 归档时间: |
|
| 查看次数: |
8430 次 |
| 最近记录: |