asp.net 项目在 IE 11 下出现 “__doPostBack”未定义 的解决办法

来源:互联网 发布:中国男性阴茎 知乎 编辑:程序博客网 时间:2024/06/05 09:59


最近我们运营的网站有用户反馈在 IE 11<asp:LinkButton> 点击出现 “__doPostBack”未定义”,经过一番google,终于知道了原因:ASP.NET可能无法辨识出一些浏览器的最新版本,还会经常把它们看做是低级的浏览器。(也就是: 不支持JavaScript。)

详见:http://blogs.msdn.com/b/scott_hanselman/archive/2011/10/28/asp-net-ie10-dopostback-javascript-ff5.aspx

本人按照该文所提供的解决办法始终未能得到解决,于是按提示尝试用单个站点的方式修复。

在项目根目录 App_Browsers下新建 浏览器文件(.browser),让其与IE11 UserAgent匹配,使.net framework 认识这是一个已知的浏览器,可以正常地向客户端输出脚本。

在文件里输入以下内容,保存即可。

<browsers>

 <browserid="IE11" parentID="Mozilla">

   <identification>

     <userAgentmatch="Trident\/7.0;rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)"/>

     <userAgentnonMatch="IEMobile" />

   </identification>

   <capture>

     <userAgentmatch="Trident/(?'layoutVersion'\d+)" />

   </capture>

   <capabilities>

     <capabilityname="browser"             value="IE" />

     <capabilityname="layoutEngine"        value="Trident" />

     <capabilityname="layoutEngineVersion" value="${layoutVersion}" />

     <capabilityname="extra"                value="${extra}" />

     <capabilityname="isColor"             value="true" />

     <capabilityname="letters"             value="${letters}" />

     <capabilityname="majorversion"        value="${major}" />

     <capabilityname="minorversion"        value="${minor}" /

     <capabilityname="screenBitDepth"      value="8" />

     <capabilityname="type"                value="IE${major}" />

     <capabilityname="version"             value="${version}" />

   </capabilities>

 </browser>

 <!-- Mozilla/5.0(Windows NT 6.3; Trident/7.0; rv:11,0) like Gecko -->

 <browserid="IE110" parentID="IE11">

   <identification>

     <capabilityname="majorversion" match="11" />

   </identification>

   <capabilities>

     <capability name="ecmascriptversion"    value="3.0" />

     <capabilityname="jscriptversion"      value="5.6" />

     <capabilityname="javascript"          value="true" />

     <capabilityname="javascriptversion"   value="1.5" />

     <capabilityname="msdomversion"        value="${majorversion}.${minorversion}" />

     <capabilityname="w3cdomversion"       value="1.0" />

     <capabilityname="ExchangeOmaSupported" value="true" />

     <capabilityname="activexcontrols"     value="true" />

     <capabilityname="backgroundsounds"    value="true" />

     <capabilityname="cookies"             value="true" />

     <capabilityname="frames"              value="true" />

     <capabilityname="javaapplets"         value="true" />

     <capability name="supportsCallback"     value="true" />

     <capabilityname="supportsFileUpload"  value="true" />

     <capabilityname="supportsMultilineTextBoxDisplay" value="true" />

     <capabilityname="supportsMaintainScrollPositionOnPostback"value="true" />

     <capabilityname="supportsVCard"       value="true" />

     <capabilityname="supportsXmlHttp"     value="true" />

     <capabilityname="tables"              value="true" />

     <capabilityname="supportsAccessKeyAttribute"   value="true" />

     <capabilityname="tagwriter"           value="System.Web.UI.HtmlTextWriter" />

     <capabilityname="vbscript"            value="true" />

   </capabilities>

 </browser>

</browsers>

0 0
原创粉丝点击