[ASP.NET].NET 4.0與IE11相容性問題

包含 c#, asp.net, vb.net, delphi.net 等 .net framework 的開發討論區
回覆文章
頭像
tim
文章: 1379
註冊時間: 2008年 11月 26日, 00:49

[ASP.NET].NET 4.0與IE11相容性問題

文章 tim »

.NET 4.0與IE11瀏覽時, 會發生 postback 失效(就是一些 runat server autopostback的元件), 原因經檢查是因為在 IE11時, Server generate 出來的程式碼沒有 javascript, 而在 IE10以下或是其他 browser 則沒有這個問題.

在 IE11 的 user-agent 字串為:
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko(HTTP_USER_AGENT)

已經沒有 MSIE 字串了, 在 MICROSOFT.NET FRAMEWORK下的 config/browser 中的 ie.browser 沒有 MSIE字串是無法滿足這個條件:
<userAgent match="MSIE (?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />

所以也就不會有對應的 browser 檔案, 而落到 generic.browser 中, 而不產生 javascript 了, 詳情可以參考這篇:
http://stackoverflow.com/questions/1909 ... d-in-ie-11

解決方案可以利用自己增加一個 browser file 或是更新 .net framework 解決. 另外文章內提及的 kb2836939 也是可以解決這個問題的方式: http://support.microsoft.com/kb/2836939/en-us
多多留言, 整理文章, 把經驗累積下來.....
回覆文章