2014-09-23 1 views
0

Это на Android Chrome, Motorola Moto G (старая версия не 4g)Андроид хром путается хешами

Я использую проверку подлинности форм. При тайм-ауте сеанса пользователь перенаправляется обратно на страницу входа в систему. Если предположить, что URL они были на было:

.../Controller/Index # Раздел1

они направлены на:

.../Logon ReturnUrl =/Controller/Index # Раздел1

на каждом браузере, кроме Android Chrome это хорошо, на хром на странице входа в систему ни один из полей ввода или кнопки работают, как если бы я не щелкал на странице на всех

После справедливого несколько проб и ошибка, которую я нашел, могу исправить это, сняв # сек Тион

Проблема заключается в том, что типичный поток будет этот

  1. сессии тайм-аута, к ошибке страница
  2. Кто-то попадает в BackButton, это берет их к предыдущей странице, формы аутентификации перенаправляет их url с хешем в querystring.

Как я могу удалить хэш из проверки подлинности аутентификации форм?

благодаря

ответ

0

Для чего это стоит это мой обходной путь для этой проблемы. Мне это не нравится, но сейчас это работает.

Я не мог удалить хэш-значение, если вы установите

window.location.hash = '' // (or null for that matter) 

тогда вы получите ту же самую проблему, потому что URL выглядит как «Index» #

Так что я изменил хэш одного который находится на странице входа в систему, что заставляет проблему уйти

function TestForAndroidError() 
{ 
    var index = window.location.href.indexOf('#content'); 
    if (index > -1) 
     return; 

    index = window.location.href.indexOf('#'); 
    if (index > -1) 
    {   
     // @* We can't seem to remove the hash but we can change it *@ 
     window.location.hash = 'content'; 
    } 
} 

TestForAndroidError();