Código Javascript
:
Ver originalfunction campos(res,formulario,caso,codigos) {
if(!nuevo_reg && !editar_reg && !ver_tabla) {
var form=$("formulario_"+formulario); //Busca el formulario desde el que ha sido llamado
if(!busq) { //busq es false si no se llama a esta funcion desde el cuadro de búsqueda
switch(caso) {
case 0: //Anterior
index--; //Resta uno al índice anterior
break;
case 1: //Siguiente
index++; //Añade uno al índice anterior
break;
case 2: //Primero
index=0; //Iguala el índice a 0 que es el primer registro
break;
case 3: //Ultimo
index=res.length-1; //Iguala el índice a la cantidad de resultados menos 1 ya que el length empieza en 1 y no 0
break;
default: //Por defecto
index=res.length-1; //Que muestre el último registro
break;
}
if(index<0) { //Significa que es el primer registro a mostrar
alert('¡Ya es el primer registro!'); //Salta una advertencia y se suma el índice para la próxima búsqueda
index++;
} else {
if(index>=res.length) { //Significa que es el último registro
alert('¡Ya es el último registro!'); //Salta una advertencia y se resta el índice para la próxima búsqueda
index--;
} else { //Si no da ningun error hace la búsqueda del registro correspondiente al índice para mostrarlo y desactiva los campos por si acaso
for (i=0; i<form.elements.length; i++) { //Form.elements=cantidad de elementos dentro del form
if(form.elements[i].type=='text' || form.elements[i].type=='textarea') { //Para que solo afecte a aquellos elementos que sean inputs o textarea
id=form.elements[i].id.split("_");
form.elements[i].value=res[index][id[id.length-1]]; //Mete en el elemento i el valor que le corresponde del registro
form.elements[i].disabled=true; //Desactiva el elemento i por si acaso
}
}
//llenartabla(formulario,res,busq,indices);
}
}
}
else { //si se le llama desde el cuadro de búsqueda...
switch(caso) {
case 0: //Anterior
for(i=0; i<indices.length; i++) {
if((index-1)==indices[i]) { //Si existe el indice en el cjto de los indices
index--; //Resta uno al índice anterior
break;
}
}
break;
case 1: //Siguiente
for(i=0; i<indices.length; i++) {
if((index+1)==indices[i]){ //Si existe el indice en el cjto de los indices
index++; //Añade uno al índice anterior
break;
}
}
break;
case 2: //Primero
index=indices[0]; //Iguala el índice a 0 que es el primer registro
break;
case 3: //Ultimo
index=indices[indices.length-1]; //Iguala el índice a la cantidad de resultados menos 1 ya que el length empieza en 1 y no 0
break;
default: //Por defecto
index=indices[indices.length-1]; //Que muestre el último registro
break;
}
for (i=0; i<form.elements.length; i++) { //Form.elements=cantidad de elementos dentro del form
if(form.elements[i].type=='text' || form.elements[i].type=='textarea') { //Para que solo afecte a aquellos elementos que sean inputs o textarea
id=form.elements[i].id.split("_");
form.elements[i].value=res[index][id[id.length-1]]; //Mete en el elemento i el valor que le corresponde del registro
form.elements[i].disabled=true; //Desactiva el elemento i por si acaso
}
}
//llenartabla(formulario,res,busq,indices);
}
}
}