'WebForm_DoPostBackWithOptions' is undefined in IE11 Preview

IE11 is coming. I just installed the developer preview version. However, if I run some of my web application and I got the error WebForm_DoPostBackWithOptions is undefined.

The error popped up when I was playing with the autopostback DropDownList.

Moreover, it looks like there was a similar issue with IE10 before:

http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx


I had a similar issue with Internet Explorer 11 not being detected correctly by .NET 4.0 framework. Here's how I worked around the problem:

Installing the suggested patches didn't do the trick. After digging deeper into the issue, I found that although the http://support.microsoft.com/kb/2836939 patch is installed on the server, the browser is still recognized as Mozilla with version 0.0 on the server. After additional research I found that if you have any .browser file in your site's app_browsers folder, the version detected on the server is wrong, namely Mozilla 0.0.

To work around the issue I created a custom .browser file in the app_browsers directory with the following content:

<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>

A similar approach is suggested in the following article: doPostback failing in IE 11+ Windows 8.1

I would like to clarify that the issue is happening only with .NET 4.0. With .NET 4.5, the browser and its version are detected correctly.


Finally, I found the solution, Thanks Scott Hunter's advice.

If you want to solve the IE11 issue, please install the hotfix below.

  • http://support.microsoft.com/kb/2836939 - NDP 4 - Win7SP1/Win2K3SP2/Win2K8R2SP1/Win2K8SP2/VistaSP2/WinXPSP3

  • http://support.microsoft.com/kb/2836940 - NDP 3.5 SP1 - Win2K3SP2/Win2K8SP2/VistaSP2/WinXPSP3

  • http://support.microsoft.com/kb/2836941 - NDP 2.0 SP2 - Win2K3SP2/WinXPSP3

  • http://support.microsoft.com/kb/2836942 - NDP 3.5 SP1 - Win7SP1/Win2K8R2SP1

  • http://support.microsoft.com/kb/2836943 - NDP 2.0 SP2 - Win7SP1/Win2K8R2SP1

  • http://support.microsoft.com/kb/2836945 - NDP 2.0 SP2 - Win2K8SP2/VistaSP2

  • http://support.microsoft.com/kb/2836946 - NDP 2.0 SP2 - Win8RTM/WinRTRTM/Win2K12RTM


I tried every patch that I've seen listed on the internet, including the ones listed here. The only thing that actually seemed to work was installing the .NET 4.5 Framework on the server.

Get it here: http://www.microsoft.com/en-us/download/details.aspx?id=30653

Hope this saves someone a few of the hours I've lost on this one.


For anyone struggling to understand why user2919107's answer above (putting a custom .browser file for IE11 in your App_Browsers folder) doesn't work, try to touch an existing .browser file in your App_Browsers folder.

Simply creating/copying the IE11 .browser file doesn't work. You need to touch an existing .browser file so that App_Browsers contents are re-compiled and taken into account.


Yes, this is the same core issue, and it's fixed by the June 2013 ASP.NET hotfix. See http://blogs.msdn.com/b/ieinternals/archive/2013/09/21/internet-explorer-11-user-agent-string-ua-string-sniffing-compatibility-with-gecko-webkit.aspx