Hej!
Lösningen är att använda ett dictionary. OveRRidE tog upp detta inte alltför länge sedan:
http://www.webforum.nu/showthread.php?p=1257904#post1257904
3 svar · 434 visningar · startad av headbug
Hej!
Sitter och jobbar i många olika språk och miljöer och nu har jag fått för mig att jag ska kunna skapa ett dynamiskt variabelnamn i ASP/VBScript... men det kanske var i matlab eller C# eller någon annan stans.
Jag har en meny på en hemsida som leder till index.asp, work.asp, etc.
Menyn har jag inkluderat så det är samma meny-script på alla sidor. För att ta reda på vilken sida jag faktiskt befinner mig på så använder jag
Dim thispage
thispage = Request.ServerVariables("SCRIPT_NAME")
thispage = Right(thispage, Len(thispage)-InStrRev(thispage, "/"))
Sen sätter jag en css-class för att markera aktiv:
if thispage = "index.asp" then a_index = "active"
if thispage = "news.asp" then a_news = "active"
if thispage = "work.asp" then a_work = "active"
if thispage = "contact.asp" then a_contact = "active"
Men helst vill jag slippa skapa dessa variabler själv, så jag tänkte att jag skulle vara listig och köra något som (om det fungerade) skulle kunna se ut såhär:
Eval "a_" & Left(thispage, Len(thispage)-4) = "active"
Men det gick ju inte, har någon något förslag på hur man gör eller kan tala om att det inte går?
Jag använder resultatet i denna kod:
<div id="top"><img src="i/top.gif" alt="top" /></div>
<div id="logo"><a href="index.asp"><img src="i/logo.gif" alt="logo" border="0" /></a></div>
<div id="menu">
<a href="index.asp" class="<%=a_index%>">Start.</a>
<a href="news.asp" class="<%=a_news%>">Nyheter.</a>
<a href="work.asp" class="<%=a_work%>">Arbete.</a>
<a href="contact.asp" class="<%=a_contact%>">Kontakt.</a>
</div>
Hej!
Lösningen är att använda ett dictionary. OveRRidE tog upp detta inte alltför länge sedan:
http://www.webforum.nu/showthread.php?p=1257904#post1257904
Ah, tackar!
Påminner om funktionen acceptera som slutgiltigt svar.