Risulta, questo è un problema con una vecchia versione di MicrosoftAjax.js (quella che viene installata con Asp.Net MVC 2).
Aprire il file MicrosoftAjax.debug.js e controllare il numero di versione del file. La parte superiore di questo file sarà simile a questo se il problema è questo:
// Name: MicrosoftAjax.debug.js
// Assembly: System.Web.Extensions
// Version: 4.0.0.0
// FileVersion: 4.0.20526.0
Questa è la versione che contiene questo errore. L'ultima versione del file al momento della stesura è 4.0.30205.0. Aggiornamento alla versione più recente e il problema scompare. Come menzionato in un commento di Nathan Fox, ho ricevuto l'ultima versione dal Microsoft cdn e in particolare le versioni minified e debug.
Per i curiosi, ho rintracciato il problema nel file javascript.
La versione buggy comprende:
if ((Sys.Browser.agent === Sys.Browser.Firefox) && window.location.hash && (!window.frameElement || window.top.location.hash)) {
window.history.go(0);
}
Quale è stata corretta a quanto segue nella nuova versione:
if ((Sys.Browser.agent === Sys.Browser.Firefox) && window.location.hash && (!window.frameElement || window.top.location.hash)) {
(Sys.Browser.version < 3.5) ?
window.history.go(0) :
location.hash = this.get_stateString();
}
fonte
2011-08-18 17:52:53
Wow. Grazie per questo. Ho avuto questo problema qualche giorno fa e non mi aspettavo che il javascript fosse il problema ... per fortuna ho trovato questa domanda e woot, ora è stato risolto. – smdrager
Grazie per aver capito questo, mi ha risparmiato un sacco di tempo! –
È possibile trovare i collegamenti ai file .js più recenti nella pagina MS CDN all'indirizzo http://www.asp.net/ajaxlibrary/CDNAjax4.ashx. –