перенаправить пользователей на страницу по умолчанию (без входа в систему), если пользователь переходит на страницу напрямую, введя URL-адрес - PullRequest
0 голосов
/ 02 декабря 2010

У меня есть веб-сайт ASP.NET 3.5 для интрасети, на котором есть страница по умолчанию с меню, и когда пользователь нажимает на элемент меню, я отображаю страницу для этого элемента меню в iframe, встроенном в страницу по умолчанию.но если пользователь вводит URL-адрес страницы непосредственно в браузере, то я бы хотел перенаправить его на страницу по умолчанию, поскольку на всех страницах контента нет меню.(Главные страницы решат эту проблему, но я не могу использовать Главную страницу здесь по причине и не хочу вдаваться в подробности).как узнать, попал ли пользователь на страницу напрямую, набрав URL или нажав на элемент меню, чтобы я мог решить, следует ли перенаправить или нет?Можно ли это узнать?Кстати, это интранет-сайт, и вход в систему не требуется.заранее спасибо.

Ответы [ 2 ]

1 голос
/ 02 декабря 2010

вставьте это в свой фрейм (или главную страницу фрейма):

<body onload="CheckTop()"></body>

<script type="text/javascript">
     function CheckTop()
     {
         if (window == window.top) window.location = //topurl, pilot page
     }
</script>
0 голосов
/ 02 декабря 2010

Вы должны использовать MasterPages для вашей проблемы, потому что iFrames не очень хорошая техника.Но вы можете попробовать его с помощью небольшого фрагмента JavaScript-кода на страницах контента:

<script type="text/javascript">
if (top == self)
  window.location = "/index.html";
</script>

Вы просто проверяете, идентична ли загруженная страница вашему iFrame.Если это так, то ваш iFrame загружается напрямую.

...