'WebForm DoPostBackWithOptions' jest niezdefiniowany w IE11 Preview

IE11 nadchodzi. Właśnie zainstalowałem wersję developer preview. Jeśli jednak uruchamiam część mojej aplikacji internetowej i mam błąd WebForm_DoPostBackWithOptions jest niezdefiniowana .

Błąd pojawił się, gdy grałem z autopostback DropDownList.

Co więcej, wygląda na to, że był podobny problem z IE10 przed:

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

Author: Michael, 2013-08-14

9 answers

Miałem podobny problem z Internet Explorerem 11, który nie został poprawnie wykryty przez. Net 4.0 framework. Oto jak obejrzałem problem:

Instalacja sugerowanych łatek nie zadziałała. Po głębszym zagłębieniu się w problem, odkryłem, że chociaż http://support.microsoft.com/kb/2836939 patch jest zainstalowany na serwerze, przeglądarka jest nadal rozpoznawana jako Mozilla w wersji 0.0 na serwerze. Po dodatkowych badaniach stwierdziłem, że jeśli masz jakieś .browser plik w folderze app_browsers Twojej witryny, wersja wykryta na serwerze jest błędna, czyli Mozilla 0.0.

Aby obejść problem utworzyłem w katalogu .browser własny plik app_browsers o następującej treści:

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

Podobne podejście jest sugerowane w poniższym artykule: doPostback w IE 11+ Windows 8.1

Chciałbym wyjaśnić, że problem występuje tylko z. NET 4.0. W. NET 4.5 przeglądarka i jej Wersja są wykrywane prawidłowo.

 39
Author: user2919107,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:34:01

W końcu znalazłem rozwiązanie, dzięki radom Scotta Huntera.

Jeśli chcesz rozwiązać problem IE11, zainstaluj poprawkę poniżej.

 6
Author: user2376512,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-20 00:59:15

Próbowałem wszystkich łatek, które widziałem w Internecie, w tym tych wymienionych tutaj. Jedyne, co wydawało się działać, to instalacja. NET 4.5 Framework na serwerze.

Pobierz tutaj: http://www.microsoft.com/en-us/download/details.aspx?id=30653

Mam nadzieję, że to uratuje komuś kilka godzin, które straciłem.

 6
Author: ckozl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-03 15:20:38

Dla każdego, kto stara się zrozumieć, dlaczego odpowiedź user2919107 powyżej (stawiając zwyczaj .plik przeglądarki dla IE11 w folderze App_Browsers) nie działa, spróbuj dotknąć istniejącego .plik przeglądarki w folderze App_Browsers.

Po prostu tworzenie / kopiowanie IE11 .plik przeglądarki nie działa. Musisz dotknąć istniejącego .plik przeglądarki, aby zawartość App_Browsers została ponownie skompilowana i uwzględniona.

 6
Author: Panagiotis Poulos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-14 22:35:00

Tak, to jest ten sam podstawowy problem i jest naprawiony przez czerwiec 2013 ASP.NET hotfix. Zobacz też http://blogs.msdn.com/b/ieinternals/archive/2013/09/21/internet-explorer-11-user-agent-string-ua-string-sniffing-compatibility-with-gecko-webkit.aspx

 1
Author: EricLaw,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-11 19:38:41

Jeśli używasz systemu windows 2003 i nie możesz zastosować żadnej poprawki; spróbuj ustawić właściwość ClientTarget obiektu Page w Page_Init twojego ASP.NET strona do "uplevel".

protected void Page_Init(object sender, EventArgs e)
{
    Page.ClientTarget = "uplevel";
}
 0
Author: Folkert,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-25 15:23:30

Ja też miałem ten problem. Próbowałem wszystkiego, aby zainstalować. NET 4.5. Szukałem tylko krótkoterminowego rozwiązania przed aktualizacją do. NET 4.5. Panagiotis Poulos miał rację co do nowego.plik przeglądarki. Dotknąłem istniejącego .plik przeglądarki i mój nowy IE .plik przeglądarki jest teraz rozpoznawany. Wszystko znowu działa.

W skrócie, wykonaj to faceci instrukcje, ale jeśli spróbujesz .podejście przeglądarki, pamiętaj, aby dotknąć istniejącego .przeglądarka plik po przesłaniu własnego .plik przeglądarki.

 0
Author: bowserm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-28 16:20:20

Znalazłem tymczasową poprawkę do tego.

Próbowałem zastosować poprawkę, ale nie mogłem jej zainstalować. Błąd: kb2600088 nie ma zastosowania lub jest blokowany przez inny warunek na komputerze. Prawdopodobnie ze względu na. Net 4.5, wygooglowałem abit, ale nie chciałem odinstalować. NET 4.5, więc nie przejrzałem.

Więc, aby obejść oryginalny problem, uruchom IE11 i przejdź do konsoli dewelopera naciskając F12. W zakładce 'Emulacja' ustaw tryb dokumentu na '10', a w zakładce użytkownik Agent string, Ustaw na "10". Wierzę, że emuluje IE 10, który działa doskonale bez konieczności uruchamiania się tego błędu.

To tylko obejście. Nic z tego. Mam nadzieję, że to pomoże tym, którzy próbują wykonać pracę.

 0
Author: f0rfun,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-02 07:25:37

Jeśli pobrałeś IE 11, ale używasz oryginalnej przeglądarki IE dostarczonej z systemem Windows, agent użytkownika przeglądarki jest trochę inny i najbardziej upvoted odpowiedź nie będzie działać.

Musisz tylko zmienić ten wiersz:

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

Do tego:

<userAgent match="Trident\/7.0;(?'someGarbage'[^'rv:']*) rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
 0
Author: Pouki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:34:01