webForumDet fria alternativet

Highlighta paging siffra

20 svar · 909 visningar · startad av jlee

jleeMedlem sedan dec. 2002378 inlägg
#1

Nu undrar jag om någon vet om det går att få sid nr highlightad på en sida med paging, alltså siffran på sidan. Så om jag är på sid 2 så vill jag få siffran 2 i fetstil eller i annan färg.

Slutet på pagingkoden:

Response.Write "<div Align=right><font face=Arial size=2>sid "
For intNum = 1 To intPageCount
    Response.Write "<a href=sida.asp?page=" & intNum & ">" & intNum & "</a> "
Next
%>
liljaMedlem sedan juli 20041 183 inlägg
#2
For intNum = 1 To intPageCount
	If intNum = SidanDuÄrPÅ Then
		Response.Write "<a href=sida.asp?page=" & intNum & "><strong>" & intNum & "</strong></a> "
	Else
		Response.Write "<a href=sida.asp?page=" & intNum & ">" & intNum & "</a> "
	End If
Next
emissionMedlem sedan dec. 19996 721 inlägg
#3

Precis så!

Fast egentligen är det onödigt att göra en länk till den sida man redan är på... :)

liljaMedlem sedan juli 20041 183 inlägg
#4

emission skrev:

Precis så!

Fast egentligen är det onödigt att göra en länk till den sida man redan är på... :)

true, true :)

jleeMedlem sedan dec. 2002378 inlägg
#5

Hur skriver jag sidan jag är på?

emissionMedlem sedan dec. 19996 721 inlägg
#6

Hur menar du? Liljas exempel var det väl inget fel på?

liljaMedlem sedan juli 20041 183 inlägg
#7

Hmm, jag antar att man kan göra så här:

For intNum = 1 To intPageCount
	If intNum = cInt(Request.QueryString("page")) Or Request.QueryString("page") = "" Then
		Response.Write "<a href=sida.asp?page=" & intNum & "><strong>" & intNum & "</strong></a> "
	Else
		Response.Write "<a href=sida.asp?page=" & intNum & ">" & intNum & "</a> "
	End If
Next

Jag kontrollerar med en enkel if-satts vilken sida du är på. har man inte valt en sida så antar jag att du startar på första sidan...

jleeMedlem sedan dec. 2002378 inlägg
#8

Nej det var inget fel på Liljas exempel men undrade hur man kollar vilken sida man är på..
Testade sista koden men det blir ingen fetstil på den valda siffran.
Ja, man startar på sid 1

devotionMedlem sedan jan. 20013 582 inlägg
#9

Hej!

Jag har precis gjort en Paging sida....

Du kanske kan ha nytta av den koden. Den sidan du är på markeras med fetstil...

:birp

http://www.webforum.nu/showthread.php?t=133803

Mvh
Henrik

jleeMedlem sedan dec. 2002378 inlägg
#10

Tack Devotion men skulle gärna fått rätt på Liljas kod om det går..tror det är ngt litet fel bara...som tyvärr inte jag hittar. Så slipper jag gör a om hela sidan menar jag

@ndersMedlem sedan juni 200032 969 inlägg
#11

Du lär väl ha en variabel i din kod som innehåller numret på den sida som nu visas. Hur ska annars rätt sida kunna visas? Så, fram med den variabeln och lägg in den där Request.QueryString("page") står i liljas kod ovan, i if-satsen.

jleeMedlem sedan dec. 2002378 inlägg
#12

Så ser det ut och då borde väl Liljas kod fungera som den är? med ("page")

        <%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strsQL = "SELECT * FROM byggda ORDER BY ID DESC"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("data.mdb")
rs.Open strsQL, strDSN, 1
rs.PageSize = 8
rs.AbsolutePage = intPage
intRecCount = rs.PageSize
intPageCount = rs.PageCount

numcols=4
if not rs.eof then
   response.write "<TABLE cellpadding=10 cellspacing=10>"
   do until rs.eof or intRecCount = 0
      response.write "<TR>"
      for i=1 to numcols
         response.write "<TD>"
         if rs.eof or intRecCount = 0 then
            response.write "&nbsp;"
         else
            %>
liljaMedlem sedan juli 20041 183 inlägg
#13

Fungerar Request("page")? Jag har alltid skrivit Request.QueryString("page") då du antagligen skickar med sidan i url:en? Kör du med method="post" i ett formulär måste du ha Request.Form("page")...

Jag hade problem för ett tag sen då siffran 3 inte var detsamma som bokstaven 3. Pröva att sätta cInt() runt båda ställena...

For intNum = 1 To intPageCount
	If cInt(intNum) = cInt(Request.QueryString("page")) Or Request.QueryString("page") = "" Then
		Response.Write "<a href=sida.asp?page=" & intNum & "><strong>" & intNum & "</strong></a> "
	Else
		Response.Write "<a href=sida.asp?page=" & intNum & ">" & intNum & "</a> "
	End If
Next
jleeMedlem sedan dec. 2002378 inlägg
#14

Testade med

If cInt(intNum) = cInt(Request("page")) Or cInt(Request("page")) = "" Then

och

If cInt(intNum) = cInt(Request.QueryString("page")) Or cInt(Request.QueryString("page")) = "" Then

men inget av det ger <strong>
märkligt va?

liljaMedlem sedan juli 20041 183 inlägg
#15

Du ska inte behöva ha cInt() då du kontrollerar om ingan sida valts: Or Request.QueryString("page") = ""

Byt ut

intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
	intPage = 1
End If

mot:

intPage = Request.QueryString("page")
If isNumeric(intPage) = False Or intPage < 1 Then
	intPage = 1
End If

och skriv sedan såhär:

For intNum = 1 To intPageCount
	If intNum = intPage  Or intPage = 1 Then
		Response.Write "<b>" & intNum & "</b>"
	Else
		Response.Write "<a href=sida.asp?page=" & intNum & ">" & intNum & "</a> "
	End If
Next

Tycker dock att det verkar konstigt att du skapar 4 kolumner dynamiskt, varför gör du det?

Kontrollerar du i HTML-koden om <strong> finns eller tittar du enbart på sidan? Testa den nya koden, ladda om sidan genom att trycka Ctrl+F5 (för att ladda om sidan helt utan cachning) och kolla sedan i HTML-koden om inte <b>sidnummer</b> finns där. Jag skulle nämligen kunna tänka mig att du i en CSS-fil ändrat hur länkarskall se ut, kan det vara så?

jleeMedlem sedan dec. 2002378 inlägg
#16

Jo det finns där nu men de är ju olänkade - både sid 1 och 2. Ja jag har ändrat länkar med CSS i samma sida. Jag har 4 kolumner men projekt som i sin tur länkar till mer info om varje...

liljaMedlem sedan juli 20041 183 inlägg
#17

Öh? Om som det är nu så är aktuell sida olänkad. Jag ändrade till det efterssom du kanske tar bort fet-stil på länkar i CSS?

Ändra koden till följande om du vill att alla sidnummer skall vara länkade:

For intNum = 1 To intPageCount
	If intNum = intPage  Or intPage = 1 Then
		Response.Write "<a href=""sida.asp?page=" & intNum & """><b>" & intNum & "</b></a>"
	Else
		Response.Write "<a href=""sida.asp?page=" & intNum & """>" & intNum & "</a>"
	End If
Next

För att kontrollera så att inte din CSS ändrar fet-stilen så kan du ju alltid ädra så att aktuell sida blir omgärdad av tecken istället. T.ex såhär:

For intNum = 1 To intPageCount
	If intNum = intPage  Or intPage = 1 Then
		Response.Write "<a href=""sida.asp?page=" & intNum & """>[" & intNum & "]</a>"
	Else
		Response.Write "<a href=""sida.asp?page=" & intNum & """>" & intNum & "</a>"
	End If
Next
jleeMedlem sedan dec. 2002378 inlägg
#18

Det blir fortf inte rätt. med nedre exemplet så blir det [] runt både 1 och 2 men om jag går till sid 2 så är det ingen [] alls.
Men du har nog rätt i att CSS tar bort fetstilen

NovaMedlem sedan feb. 2005216 inlägg
#19

Detta använder jag till en sökfunktion med paging för att få så att aktuell sida inte är fetmarkerad. Jag har hittat ett pagingskript här på sidan och pillrat till det lite.

If forRS.PageCount > 1 Then
    If intPage > 1 Then
	
      Response.Write("<b><a href=""recept.asp?mat=1"&"&amp;textid=22&amp;drsok=" & strSearch &""">Första"&"</a></b> ")
     
   
    End If

    For i = 1 To forRS.PageCount
      If i <> intPage Then
        Response.Write("<b><a href=""recept.asp?mat=" & i & "&amp;textid=22"&"&amp;drsok=" & strSearch &""">" & i & "</a> </b>")
      Else
        Response.Write(i & " ")
      End If
    Next

    If intPage < forRS.PageCount Then
            Response.Write("<b><a href=""recept.asp?mat=" & forRS5.PageCount & "&amp;textid=22"&"&amp;drsok=" & strSearch &""">Sista</a></b> ")
    
     
    End If
jleeMedlem sedan dec. 2002378 inlägg
#20

Ja du har lyckats lösa det men skulle vilja använda min befintliga lösning. Går det verkligen inte att fixa det med Liljas kod på något sätt...vill helst ha kvar CSS som det är på sidan oxå. Det borde väl gå att kringgå Css´n till just pagingen så Lijas kod funkar?
Min CSS ser ut såhär

<style type="text/css">
<!--

a:visited {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #000000;
	text-decoration: none;
}
a:hover {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #000000;
	text-decoration: none;
}
a:active {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #000000;
	text-decoration: none;
}
-->
</style>
141 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)