Is it possible to build some kind of master page with Classic ASP without frames or iframe
s?
I’m wondering if there is a way to include content pages in the main page like ASP.NET master pages do. From what I have researched, ASP Classic does support inclusion of other ASP/HTML pages into a page, but the value put into this include
means the function cannot be dynamic.
You could just create functions (say, a Header()
function and a Footer()
function) which do nothing but output some set of markup. Those functions can take parameters too, and be called conditionally. It's not quite the same as a Master page, but it sounds like it accomplishes what you are trying to do. You would have an <!--#include file="headerfooter.asp"-->
on each page, and each page would call Header()
& Footer()
.
Or you can just use <!--#include file="header.asp"-->
at the top and <!--#include file="footer.asp"-->
at the bottom of each page too. I've seen both approaches.
If you are looking for the reverse, that is, a single template page which calls individual pages in it's "middle" section, then that's not really something you can do easily with ASP classic. It's a fundamental difference in approach: ASP.NET has a concept of a control tree, events, etc, while ASP Classic is essentially just a script that runs top to bottom.