Wednesday, June 12, 2013

Internet Explorer 10 (IE10) Causes Problem with ASP.NET Applications

A customer reported a problem to me today that the button at our site does not work when used with IE10.  I've never encountered this problem before because I use Chrome mainly (I think the only people still using IE are those who do not know how to download a new browser and just sticks to the one pre-installed with their OS).

When I fired up my IE10 and tested it against our test server, it also worked fine.  After trading screenshots with the customer, I found the problem!  It seems that our production server (which runs on an older OS compared to our test server), has an ASP.NET installed that does not recognize IE10!  And if it does not recognize a browser, the default system behavior is to assume that the browser is not Javascript-capable and disables support for Javascript altogether.  This has the effect of disabling buttons that rely on Javascript.  This behavior is documented in Scott Hanselman's page.

I tried Scott's suggestions from the Machine-Wide and the Site-Only fixes, which basically updates the browser definition file of the .NET framework, to no effect.  The hotfix described in the Microsoft knowledgebase that is supposed to fix this issue also does not work for me.

In the end, I tried forcing the browser to emulate IE9 by sending a meta tag from my page as described here:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">

With .NET websites, inserting this in the Masterpage automatically fixes all pages.  IE sucks.

No comments: