Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/11/2013, 13:29
josemar2000
 
Fecha de Ingreso: mayo-2013
Mensajes: 38
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Mostrar los ultimos objetos de un Array

Hola, y no me digas eso sobre el código que me deprimes, la verdad es que tu código es mucho más limpio, pero tiene un pequeño problema, que yo con el mío no he conseguido solucionarlo, los botones de siguiente y último funcionan bien si la última pagina no está completa, o sea en el ejemplo si en la variable limite_resultados le pones 4 habría 2 páginas de 4 objetos y una 3ª dónde se mostraría uno sólo pues en este caso lo hace bien, pero si le pones 3 en ese caso cuando llegas a la 3 que sería la última y estaría completa ya no lo hace bien, los botones de siguiente y último siguen activos y al pulsar sobre ellos te llevan a una cuarta que está vacía.
Y el otro tema es que es un array de búsquedas, lo he comentado en el mensaje anterior, aunque sólo puse el código referente a los botones.
Aquí te paso el resto del código, que es el referente a las búsquedas.

Saludos

Código Javascript:
Ver original
  1. function busca(valorBusqueda){
  2.     ultimo = 0;
  3.     encontrados = new Array();
  4.     for(var i=0; i < buscarNombre.length; i++){
  5.         var nodoLower = buscarNombre[i][0].toLowerCase();
  6.         if(nodoLower.indexOf(valorBusqueda.toLowerCase()) != -1) {
  7.             encontrados.push(buscarNombre[i]);
  8.         }
  9.     }
  10.     document.getElementById("datos");  
  11.     var divcant = document.getElementById("cantidad");
  12.     var divpags = document.getElementById("pagina");
  13.    
  14.     if(encontrados.length == 1){       
  15.         var cantidad = encontrados.length + " encontrado";         
  16.         document.getElementById("datos").innerHTML = encontrados[0][0] +" ... "+ encontrados[0][1] + "<br>";               
  17.         document.getElementById("botsiguiente").disabled=true;        
  18.         }else if(encontrados.length > 1) {     
  19.          var cantidad = encontrados.length + " encontrados";
  20.          document.getElementById("datos").innerHTML = "";      
  21.         var datos = "";
  22.         for (i = 0; i < limite_resultados; i++){        
  23.             document.getElementById("datos").innerHTML += encontrados[i][0] +" ... "+ encontrados[i][1] + "<br>";            
  24.             ultimo ++;
  25.         }
  26.         }else{
  27.             var cantidad = "No se han encontrado resultados";      
  28.             document.getElementById("datos").innerHTML = "";
  29.             divpags = "";
  30.             document.getElementById("pagina").innerHTML = "";                              
  31.     }  
  32.                
  33.    
  34.         divcant.innerHTML = cantidad;

Código HTML:
Ver original
  1. <form id="frm" name="frm">
  2.     Buscar nombre:
  3.     <input name="text1" type="text" id="valorBusqueda" size="30" maxlength="25" value="Ingresar texto de búsqueda" onFocus="limpiarTexto()" onBlur="mostrarTexto()" />
  4.     &nbsp;
  5.     <button type="button" id="botbuscar" value="Buscar" onMouseDown="busca('valorBusqueda').value)"><strong>Buscar</strong> &nbsp;</button>
  6. </form>