Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/12/2006, 11:20
STRAW102
 
Fecha de Ingreso: diciembre-2006
Mensajes: 16
Antigüedad: 18 años, 4 meses
Puntos: 0
Re: paginar muchas paginas

Cita:
Iniciado por Myakire Ver Mensaje
Pues fácil, pero laborioso, jejeje

Mira, en las FAQ's hay un script de paginacion (usa una "clase"), que modifique para que se comportara casi igual al de FDW, te dejo el código y para que te tomes una idea. Ya las dudas específicas me dices luego:

Código:
<table class="tborder" border="0" cellpadding="3" cellspacing="1">
<tbody><tr>
	<td class="vbmenu_control" style="font-weight: normal;height:40px"><%="Página " & PaginaActual & " de " & nro_paginas %></td>
<%
MuestraNumPag = 10
IF (vPagAct > 1) and (nro_paginas > MuestraNumPag) Then%>
	<td class="alt1"><a class="smallfont" href="<%=Me.pagina%>?ref=<%=0%>&PagAct=<%=1%>&sort=<%=vOrden%>&Estatus=<%=vEstatusP%>" title="Primera Página"><strong>«</strong> Primero</a></td>
	<td class="alt1"><a class="smallfont" href="<%=Me.pagina%>?ref=<%=vPagAct-2%>&sort=<%=vOrden%>&PagAct=<%=vPagAct-1%>&Estatus=<%=vEstatusP%>" title="Página Anterior">&lt;</a></td>
<%
End If
If Cint(vPagAct+9) > CInt(nro_paginas) Then
   vFinal = nro_paginas-1
	 vInicio = vFinal - MuestraNumPag
Else
   vFinal = vPagAct+MuestraNumPag
	 If vFinal - MuestraNumPag < 1 Then
	    vInicio = 1
	 Else
	    vInicio = vFinal-MuestraNumPag
	 End If
End If
If CInt(vPagAct) <= CInt((vFinal-(MuestraNumPag/2))) Then 
   vInicio = vPagAct - (MuestraNumPag/2) 
   vFinal = vPagAct + (MuestraNumPag/2) 
End If
if vInicio < 1 Then 
   vInicio = 0
	 vFinal =  MuestraNumPag
End if
if vFinal > CInt(nro_paginas) Then 
	 vFinal =  nro_paginas-1
End if
	 
'println("PagAct: " & vPagAct & " (" & vInicio & " to " & vFinal & ")")
	For i=vInicio to vFinal
		If i < vPagAct+5 Then vInicio = vPagAct-1 End If    
    Titulo = "Registros del " & FormatNumber(i*me.por_pagina,0) & " al " & FormatNumber(i*me.por_pagina+por_pagina,0) & " de " & Me.total_registros  
    If cInt(Me.desde) = CInt(i*Me.por_pagina) then%>
			<td class="alt2"><%=Justifica(i+1,2)%>
    <%else%>
			<td class="alt1"><a class="smallfont" href="<%=Me.pagina%>?ref=<%=i*Me.por_pagina%>&PagAct=<%=i+1%>&sort=<%=vOrden%>&Estatus=<%=vEstatusP%>" title="<%=Titulo%>"><%=Justifica(i+1,2)%></a>
    <%end if%>
		</td>
    <%If Not(i < nro_paginas-1) then UltimaPagina = Me.pagina & "?ref=" & i*Me.por_pagina & "&PagAct=" & i+1 & "&sort=" & vOrden end if
  Next
UltimaPagina = Me.pagina & "?ref=" & (nro_paginas-1)*por_pagina & "&PagAct=" & nro_paginas & "&sort=" & vOrden 
IF (CInt(vPagAct) < CInt(nro_paginas)) and (nro_paginas > 9) Then%>
	<td class="alt1"><a class="smallfont" href="<%=Me.pagina%>?ref=<%=vPagAct+2%>&PagAct=<%=vPagAct+1%>&sort=<%=vOrden%>&Estatus=<%=vEstatusP%>" title="Siguiente Página">&gt;</a></td>
	<td class="alt1"><a class="smallfont" href="<%=Me.pagina%>?ref=<%=(nro_paginas-1)*por_pagina%>&PagAct=<%=nro_paginas%>&sort=<%=vOrden%>&Estatus=<%=vEstatusP%>" title="Última página">Último <strong>»</strong></a></td>
<%
End If
%>
	<td style="cursor: pointer;" onclick="ShowBox('pagenav_menu')"> 
	   <img alt="" title=""  src="images/menu_open.gif" border="0"></td>
  <td>
  <div style="display:none;margin:0;padding:0">
		<table cellpadding="4" cellspacing="1" border="0" >
		<tr>
			<td nowrap="nowrap">Ir a la Página...</td>
			<td >
				<input type="text" style="font-size:11px" onKeyPress='return SoloNumeros(event)' size="4" />
				<input type="button" class="button" value=" Ir "/>
			</td>
		</tr>
		</table>
	</div>
	</td>
</tr>
</tbody></table>

<script>PaginasTotales=<%=nro_paginas-1%></script>
wow esta cañon el codigo pero me da error en "Me.pagina" supongo que es porque ni siquiera he declarado dicho recordset? podrias poner completo el codigo... te agradeceria muchisimo ...no tengo mucho en el mundillo del asp... pero me esfuerzo :P...ya tengo la paginacion lista solo que no se como carajos hago los bloques de paginacion ni como hacer para que me corran las clases :(