Создание страницы с фреймом, которая вызывает саму себя
Статьи / ASP /
Назад
Итак, нам нужна страница с фреймом и, например, в этой странице и во фрейме содержится схожая или связанная по смыслу информация. Обычно для фреймов используются отдельные страницы, но есть ли смысл создавать две различные страницы с одинаковой информацией. Если Вы используете только HTML, то - да. ASP позволяет нам схитрить.
Для начала создадим основную страницу (sample.asp) :
<% @ Language=VBScript %>
<html>
<head>
<meta http-equiv=Content-Type content=text/html; charset=windows-1251>
<title>Заголовок</title>
</head>
<body>
<!-- тело основной страницы -->
Содержание основной страницы
<!--Вставка фрейма -->
<iframe height=100% width=100% frameborder=0 src=sample.asp?frame=1></iframe>
</body>
</html>
Из кода видно, что URL фрейма есть сама же страница, только с дополнительным параметром frame. По этому параметру будем определять куда загружена страница: в окно или во фрейм.
Для это вставим следующее условие в код страницы:
<%if request.querystring(frame)<>1 then%>
Содержание основной страницы
<%else%>
Содержание фрейма
<%end if%>
В итоге код страницы будет выглядеть так:
<% @ Language=VBScript %>
<html>
<head>
<meta http-equiv=Content-Type content=text/html; charset=windows-1251>
<title>Заголовок</title>
</head>
<body>
<%if request.querystring(frame)<>1 then%>
<!-- тело основной страницы -->
Содержание основной страницы
<!--Вставка фрейма -->
<iframe height=100% width=100% frameborder=0 src=sample.asp?frame=1></iframe>
<%else%>
Содержание фрейма
<%end if%>
</body>
</html>