/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Link til teks på betingelse....
Fra : Archie Mósses


Dato : 20-04-03 17:14

Mit problem er ikke et af de helt stor, dvs. at jeg godt kan leve
uden, men jeg synes det kunne være smart.

Hvordan for jeg nogle links til at være normal tekst på en given
betingelse?

Her er koden:

<%
strSQL = "Select * From Weapons"
Set rs = Conn.Execute(strSQL)
Do
strId = rs("id")
strNavn = rs("Name")
strLink = "<a href='default.asp?page=weapons&check=gun&id=" &
rs("Id") & "'>" & strNavn & "</a>"
Response.Write "<li>" & strLink & "</li>"
rs.MoveNext
Loop While Not rs.EOF
Conn.Close
Set Conn = Nothing
%>

Jeg vil have linket til det våben som man kigger på til at være
tekst. Har prøvet en del mærkelige ting, men ingen af dem lader
til at virke... På forhånd en hel del tak.


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jonas Schmeltz Aaber~ (21-04-2003)
Kommentar
Fra : Jonas Schmeltz Aaber~


Dato : 21-04-03 09:56

> Jeg vil have linket til det våben som man kigger på til at være
> tekst. Har prøvet en del mærkelige ting, men ingen af dem lader
> til at virke... På forhånd en hel del tak.

Hvis jeg har forstået det rigtigt, skal <a>...</a> koderne bare
fjernes fra listeelementet, hvis man kigger på det pågældende våben?

Det kunne gøres sådan:

<%
strStartSpan = "<b>"
strEndSpan = "</b>"

strSQL = "Select * From Weapons"
Set rs = Conn.Execute(strSQL)

Do While Not rs.EOF
strId = rs("id")
strNavn = rs("Name")

If Request.Querystring("id") <> strId Then
strStartSpan = "<a href=""default.asp?page=weapons&check=gun&id=" &
rs("Id") & """>"
strEndSpan = "</a>"
End If

strLink = strStartSpan & strNavn & strEndSpan
Response.Write "<li>" & strLink & "</li>"

rs.MoveNext
Loop

Conn.Close
Set Conn = Nothing
%>


- Her bliver det pågældende våben også fremhævet med FED, så det er
mere synligt end de andre.

MVH Jonas (aka. Juke)

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (21-04-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 21-04-03 20:35

Jonas Schmeltz Aaberg skrev:

> Det kunne gøres sådan:

Et par kommentarer til din kode følger.

> Do While Not rs.EOF
> strId = rs("id")

strId indeholder id-værdien i den datatype den er defineret i i
databasen - formentlig heltal (autonummerering). Hvis ideen er at
have en tekstudgave af id-værdien skal du bruge Cstr(rs("id")). Jeg
ville dog foretrække at konvertere Request-værdien til integer i
stedet.

> If Request.Querystring("id") <> strId Then

a) Du kan spare en del requests ved at lægge
Request.Querystring("id") over i en variabel. Som koden står nu
hentes id-værdien fra querystringen i hvert gennemløb af løkken.

b) Venstresiden af sammenligningsudtrykket indeholder en tekst,
mens højresiden formentlig indeholder en talværdi. Derfor vil
sammenligningen ikke fungere efter hensigten. Et typecast kan sikre
at begge værdier har samme datatype.

Eksempel:

Dim aktuelID

aktuelID = Request.Querystring("id")

' opbygning af recordset som før

Do while not rs.EOF
   If Cint(aktuelID) = rs("id") Then
       ' udskriv tekst uden link
   Else
       ' udskriv tekst og link
   End If

   rs.movenext
Loop
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408852
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste