ASPTipsSkapa länkarna dynamisktEtt förslag till layoutmetod
[ Hem ] Allmänt ASP XML SQL ADO HTML CSS VB Java Design Karta
Grunder Input/output VBScript Databaser Tips Exempel

Ett förslag till layoutmetod

Om man använder en kombination av include och Content Linking kan man förenkla livet rätt mycket.

För att se hur detta kan fungera så kan du prova följande

Skapa en fil i din projektkatalog med namnet links.txt.

Den skall innehålla följande

sid1.asp    Min första sida
sid2.asp    Min andra sida
sid3.asp    Min tredje sida
sid4.asp    Min fjärde sida
sid5.asp    Min femte sida

Observera att det skall finnas exakt EN tabulator mellan första och andra kolumnen. Om du är lat och kopierar ovanstående text till din fil så måste du modifiera den genom att ta bort mellanslagen och sätta dit tabulatorer (det finns inga tab i HTML)

Skapa sedan en ASP fil med namnet navtop.asp. Dess innehåll kommer nedan

<%
Set navList = Server.CreateObject ( "MSWC.NextLink" )
currInd = navList.GetListIndex ( listFile )
lastInd = navList.GetListCount ( listFile )
count = navList.GetListCount ( listFile )
%>


<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-1">
<!-- Modifiera vid behov men lämna kvar ASP koden någonstans -->
<TITLE>Anders sidor [<% =navList.GetNthDescription(listFile, currInd) %>]</TITLE>
</HEAD>
<BODY bgcolor="#FFFFCC">
<table align="left" border="0" cellspacing="0" cellpadding="0" width="146" >
<%
For row = 1 to count
%>

    <TR>
    <% if row = currInd Then %>
        <TD>
        <% =navList.GetNthDescription ( listFile , row ) %>
        </TD>
    <% Else %>
        <TD>
        <a href="<% =navList.GetNthURL ( listFile , row ) %>">
            <% =navList.GetNthDescription ( listFile , row ) %>
        </A>
        </TD>
    <% End If %>
<% Next %>
</TABLE>

<TABLE border="0" cellpadding="10"><TR><TD>
<FONT size="7" face="Arial,Helvetica" >
<% =navList.GetNthDescription ( listFile , currInd ) %>
</FONT>
<HR>

Skapa även en ASP fil med namnetnavbottom.asp. Dess innehåll kommer nedan

<p>
<hr>
<% if currInd > 1 Then %>
Föregående sida:
    <a href="<% =navList.GetNthURL ( listFile , currInd - 1 ) %>">
    <% =navList.GetNthDescription ( listFile , currInd - 1 ) %>
    </a>
<% End If %>
&nbsp;
<% if currInd < count Then %>
Nästa sida:
    <a href="<% =navList.GetNthURL ( listFile , currInd + 1 ) %>">
    <% =navList.GetNthDescription ( listFile , currInd + 1 ) %>
    </a>
<% End If %>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>

Skapa sedan filerna sid1.asp till och med sid5.asp. De skall samtliga ha samma utseende

<%@ LANGUAGE="VBSCRIPT" LCID=2077 %>
<% listFile = "links.txt" %>
<!-- #include file="navtop.asp" -->

Här skriver du in någonting. Skriv lite olika saker i de fem sidorna så du ser skillnad på dem

<!-- #include file="navbottom.asp" -->

  • Är du riktigt LAT kan du klicka här för att se hur det börjar se ut

    OK, layouten på dessa sidor är väl inte så mycket att skryta över. Vitsen med denna metod är att om man ändrar på navtop.asp eller navbottom.asp så kommer samtliga sidor att ändra. (Alla sidor i denna sajt är baserade på denna metod, lite mera layout bara)

    Har man en sida som riktar sig till "vatusvenskan" (rikssvenskar) så kan man se till att eventuell datering m.m. blir korrekt genom att byta ut

    <%@ LANGUAGE="VBSCRIPT" LCID=2077 %>
    till
    <%@ LANGUAGE="VBSCRIPT" LCID=1053 %>
    på den sidan (Se förklaringen till LCID)

    Vill man ha en annan bakgrund på samtliga sidor ändrar man på denna rad i navtop.asp

    <BODY bgcolor="#FFFFCC">
    Kanske man sätter in en bakgrunsbild eller en annan färg...

    Vill man att navigeringen skall komma till höger istället för till vänster så ändrar man från

    <table align="left" border="0" cellspacing="0" cellpadding="0" width="146" >
    till
    <table align="right" border="0" cellspacing="0" cellpadding="0" width="146" >

    Vill man ha bilder istället för text i navigeringslistan kan man sätta in bildfilernas namn istället för förklaringar i listfilen. Sedan kan man ändra

    <a href="<% =navList.GetNthURL ( listFile , row ) %>">
        <% =navList.GetNthDescription ( listFile , row ) %>
    </a>
    till
    <a href="<% =navList.GetNthURL ( listFile , row ) %>">
    <img src="<% =navList.GetNthDescription ( listFile , row ) %>">
    </a>

    Vill jag ändra på ordningsföljden eller ändra på rubriktexterna så ändrar jag bara på links.txt

    sid4.asp    En sida med stil
    sid1.asp    Min första sida
    sid3.asp    Min tredje sida
    sid5.asp    Min femte sida
    sid2.asp    Min andra sida

    Vill jag sätta in en ny fil så skriver jag bara in dess namn i links.txt

    ny.asp     En ny första sida
    sid4.asp    Min fjärde sida
    sid1.asp    Min första sida
    sid3.asp    Min tredje sida
    sid5.asp    Min femte sida
    sid2.asp    Min andra sida

    Har man många sidor (som i denna applikation) så kan jag ha många länkfiler. Eftersom varje sida "vet" vilken länkfil som skall användas så kommer den automatiskt att ladda rätt lista.

    Nu är det säkert någon som funderar på hur detta koncept fungerar med Frames och svaret är att det går att tillämpa samma metoder med frames. Jag ORKAR dock inte förklara hur man gör detta (det är lite omständigt)

    Vill någon verkligen veta hur man gör så tag kontakt...

    Jag har några testsidor på nätet under adressen http://bet.puv.fi/proto/ där jag arbetar verkligen dynamiskt med länkfiler. Ni kan ju se om ni kan lista ut hur jag gör.

    Ni kan även se om ni lyckas nästa upp alla frames på http://www.osuuspankki.fi där ni kan se en antydan till en annan metod för frameshantering

    Nackdelen med denna metod är att man inte kan använda FrontPage97 för att konstruera sidorna men vem bryr sig...

    Real programmers write their own code.
    Wannabe's use code generators...

  •   Skapa länkarna dynamisktKonvertera ASP till HTML
    Tips
    Använd include!
    Mångspråkiga sidor
    Skapa länkarna dynamiskt
    Ett förslag till layoutmetod
    Konvertera ASP till HTML
    Kompletterande saker till layoutmetoden
    Browserkontroll


    Top
    < Skapa länkarna dynamiskt Konvertera ASP till HTML>
    © Anders Enges, Vörå 2002  | 22.01.01 21:11 Visa asp koden