Comunidad de diseño web y desarrollo en internet online

Problemas con los botones de anterior/siguiente en un array

Citar            
MensajeEscrito el 03 Oct 2013 08:16 am
Tengo un array con una serie de elementos y una búsqueda y he creado unos botones para moverme hacia adelante y hacia atrás por los resultados, pues los dos botones me funcionan si voy desde el principio hasta el final de seguido, o viceversa, pero si en uno de los resultados retrocedo uno y luego vuelvo a pulsar siguiente en vez de pasar al siguiente elemento vuelve al primero, o sea, que vuelve a empezar la serie.

var ultimomostrado = 0;
var encontrados=new Array();
var buscarNombre = new Array();
buscarNombre = [["Daniel",35],
["Luis",42],

function siguiente(){
if (ultimomostrado<encontrados.length){
ultimomostrado++;
var num=ultimomostrado+1;
document.getElementById('mensaje').innerHTML=num+" de "+encontrados.length+" resultados";
document.frm.nombre.value = encontrados[ultimomostrado][0];
if(ultimomostrado==encontrados.length-1){
document.frm.botsiguiente.disabled = true;
document.frm.botanterior.disabled = false;
ultimomostrado = 0;
}else{
document.frm.botsiguiente.disabled = false;
document.frm.botanterior.disabled = false;
}
}
}

function anterior(){
if (ultimomostrado<encontrados.length){
ultimomostrado++;
var num=ultimomostrado+1;
document.getElementById('mensaje').innerHTML=num+" de "+encontrados.length+" resultados";
document.frm.nombre.value = encontrados[ultimomostrado][0];
document.frm.botanterior.disabled = true;
ultimomostrado = +1;
if(ultimomostrado==encontrados.length-1){
//document.frm.botsiguiente.disabled = true;
document.frm.botanterior.disabled = false;
//ultimomostrado = -1;
}else{
document.frm.botsiguiente.disabled = false;
document.frm.botanterior.disabled = false;
ultimomostrado = -1;
}
}
}

Por josemar2000

15 de clabLevel



 

msie8
Citar            
MensajeEscrito el 04 Oct 2013 05:56 am
Si mostraras tu código html se podría analizar con mas claridad tu problema, te recomiendo que lo muestres, por lo que veo en este código javascript que compartes tiene un error de sintaxis:

Código Javascript :

buscarNombre = [["Daniel",35],
["Luis",42],
//  Te falta cerrar  ' ] ' 

Si esto no tiene nada que ver con tu problema, muestra tu código para que se analise mas a fondo tu script.

Saludos!

Por alejandroC

34 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Oct 2013 09:17 am
En el original tengo cerrado el código, pero en vez de coger todos los elementos, he cogido los dos primeros, por eso aparece abierto, no me he dado cuenta de cerrarlo en el ejemplo para evitar confusiones
y con el resto, he enviado la parte del código donde está el problema, no he querido extenderme para que no resulte farragoso.

El problema con los botones está que al cortar el avance o el retroceso se inicializa a 0 la variable ultimomostrado, me explico.
Si vas pulsando cualquiera de los dos botones, desde al principio hasta el final, funciona bien, el problema, viene cuando, te pongo el ejemplo con un botón pero con el otro ocurre lo mismo, si pulsas el botón de siguiente y cuando has avanzado varios resultados, pinchas en el botón anterior, el ultimomostrado vuelve al anterior, hasta ahí bien, pero si entonces pinchas en el de siguiente, ya no avanza, sino que retrocede hasta el primero.

Y el problema está yo creo en la parte de código que he escrito, en el resto del código está la búsqueda y el mostrar los resultados y toda esa parte funciona bien, pero si necesitas otra parte del código me lo dices.

Saludos

Por josemar2000

15 de clabLevel



 

msie8

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.