De hecho, AJAX no es algo que se pueda lograr simplemente escribiendo JS. Aún debes tener cierta experiencia en programación. De lo contrario, incluso si lo escribes, la idea no estará clara y no sabrás por dónde empezar cuando quieras hacerlo. cambios en el futuro. Entonces, después de entrar brevemente en contacto con la programación orientada a objetos, sentí que realmente no era fácil hacerlo bien en AJAX. ¿Por qué mencioné AJAX cuando escribí el tutorial de paginación ASP? Practique más sobre la importancia de la estructura en el proceso de programación.
Además, muchos amigos tienen sentimientos profundos sobre la paginación, por lo que nunca se han atrevido a tocarla. Usan componentes escritos por otros o modifican cosas de otras personas. Especialmente para .net, siento profundamente que si quieres desarrollarlo rápidamente. un proyecto, creo que .net es una plataforma excelente. Debido a que está fuertemente controlado, los principiantes no pueden entender la idea de la programación y no pueden encontrar la sensación de programar en absoluto, como si fueran bloques de construcción. A veces todavía es necesario practicar cosas de bajo nivel para mejorar su capacidad técnica personal. se puede mejorar. Mejorar. No quiero ser un ensamblador que solo pueda usar .NET.
Bien, aquí está el código fuente de la paginación ASP para todos. Se ha comentado en detalle y, en general, se puede entender.
Debido a que este es el tutorial uno, comenzaré desde el más simple. Utilizo directamente AbsolutePage para definir la página actual, por lo que no uso métodos de cursor más complicados como MoveFirst, y también uso cuadros de selección desplegables para la paginación. Esperaré el próximo tutorial. Escribiré otro método de paginación avanzado, dando un método para avanzar diez páginas, retroceder diez páginas y mostrar solo el grupo de diez páginas actual.
Aunque ASP es algo desactualizado porque se puede escribir usando JS, creo que al hacer una DEMO del proyecto, usar ASP es más conveniente que .NET o JAVA, porque no necesita instalar un entorno enorme. Simplemente configúrelo. Si realmente necesitas desarrollar un proyecto a gran escala, definitivamente usaré .NET o JAVA, porque esto implicará problemas de eficiencia.
Copie el código de código de la siguiente manera:
<%@LANGUAGE=PÁGINA DE CÓDIGOS JAVASCRIPT=936%>
<%
//Definir declaración de conexión de base de datos
var connstring = Proveedor = Microsoft.Jet.OLEDB.4.0; Fuente de datos =
+Server.MapPath(base de datos/voto.mdb);
//Crear una consulta de base de datos rs
var rs = Servidor.CreateObject(ADODB.Recordset)
//método de conexión rs
rs.ActiveConnection = cadena de conexión
// declaración de consulta rs (consulta en orden inverso al tiempo de envío del usuario)
rs.Source = seleccionar * de los usuarios ordenar por tiempo de uso DESC
//Definir el modo de consulta de la base de datos
rs.CursorType = 3
rs.CursorLocation = 3
rs.LockType = 1
//Definir la cantidad de datos que se muestran en cada página
rs.Tamaño de página = 10
//Abrir conexión a la base de datos
rs.Abrir()
//Definir el número total de registros de la base de datos, el número total de páginas y la ruta URL
var cuenta, pagecos, esta URL
recuentos = rs.RecordCount
pagecos = rs.PageCount
estaUrl = Solicitud.VariablesdelServidor(URL)
//Ejecutar si el cursor está en la tabla
si(!rs.EOF || !rs.BOF){
//Ejecutar si el parámetro de página de la URL no está vacío
if(Solicitud(página).Contar!= 0){
//Definir la cadena de enlace predeterminada, primera página, última página, página anterior, página siguiente
// El valor de la página de la URL (la página actual especificada), la página actual, el número actual de datos que se muestran en cada página
var defaltStr, primera página, última página, prepágina, página siguiente, páginas, página ahora, tamaño ahora
defaltStr = '<a href='+estaUrl+'?página='
primera página = defaultStr+'1>Página de inicio</a>'
lastpage = defaltStr+pagecos+'>Última página</a>'
páginas = Solicitud(página)
//Si está en la primera página
//Página de inicio, la página anterior no es un enlace
si(páginas <= 1){
rs.AbsolutePage = 1;
primera página = 'Página de inicio'
prepagina = 'página anterior'
página siguiente = defaultStr+'2>Página siguiente</a>'
//Si está en la última página
//Última página, la página siguiente no es un enlace
}de lo contrario si(páginas >= pagecos){
rs.AbsolutePage = pagecos;
prepage = defaltStr+(pagecos-1)+'>Página anterior</a>'
última página = 'última página'
página siguiente = 'página siguiente'
}demás{
rs.AbsolutePage = páginas
prepage = defaltStr+(Number(pages)-1)+'>Página anterior</a>'
página siguiente = defaltStr+(Número(páginas)+1)+'>Página siguiente</a>'
}
}
páginaahora = rs.PáginaAbsoluta
ahoraTamaño = rs.Tamaño de página
//Si está en la última página y la cantidad de datos mostrados no es igual a la cantidad de datos mostrados en cada página
//Porque la última página no puede ser exactamente igual a la cantidad de datos que se muestran en cada página cada vez
//Entonces necesitas definir un método desigual
if(nowPage >= pagecos && (pagecos*rs.PageSize)%counts != 0){
nowSize = cuenta%rs.PageSize
}
%>
<ancho de tabla=100% borde=0 espacio entre celdas=0 relleno de celdas=0 clase=información de usuario>
<tr>
<td align=centro>
<!--Mostrar página de inicio, página anterior-->
<%=primera página%> <%=prepágina%>
Saltar a <select onchange=location.href='<%=thisUrl%>?page='+this.value>
<%
//La paginación se basa en la visualización del bucle
for(var num=1; num<=pagecos; num++){
if(páginaahora == núm){
%>
<valor de opción=<%=num%> seleccionado=seleccionado><%=num%></opción>
<%
}demás{
%>
<valor de opción=<%=núm%>><%=núm%></opción>
<%
}
}
%>
página </select>
<!--Mostrar página siguiente, última página-->
<%=página siguiente%> <%=última página%>
<!--Muestra el número de página actual, el número total de páginas, el número total de registros y el número de datos que se muestran en cada página-->
Registros totales <%=nowPage%> / <%=pagecos%> página<%=counts%> / <%=rs.PageSize%>
</td>
</tr>
<%
//El contenido se muestra en un bucle
for(var i=1;i<=ahoraTamaño;i++){
%>
<tr>
<td><span>IP de usuario:</span><%=rs(usip)%></td>
</tr>
<tr>
<td><span>Sugerencia:</span><%=rs(us1)%></td>
</tr>
<tr>
<td><span>Hora de envío:</span><%=rs(usetime)%></td>
</tr>
<%
//El cursor de la base de datos se mueve al siguiente registro
rs.MoveNext();
}
%>
</tabla>
<%
//Si el cursor de la base de datos no está en la columna de la base de datos
}demás{
Response.Write(¡Sin información del usuario!)
}
//Cerrar conexión a la base de datos
rs.Cerrar()
%>