12/12/2006, 23:12
|
| | Fecha de Ingreso: agosto-2006
Mensajes: 34
Antigüedad: 18 años, 2 meses Puntos: 0 | |
Re: Paginado grid; obtener valores del control <A/> Dado que no se vio respuesta, la semana pasada me decidi al hacerlo y no esperar la respuesta, me tomo dos horas con mas maña que conocimiento pero bueno, se los dejo, disculpen si no explico mucho pero he estado con mucho trabajo y en esta semana tengo examenes.
<td>
<a id="Anterior" onclick="nuevoConjunto(0)" class="colorLiga"></a>
<a id="Paginado1" class="colorLiga"></a>
<a id="Paginado2" class="colorLiga"></a>
<a id="Paginado3" class="colorLiga"></a>
<a id="Paginado4" class="colorLiga"></a>
<a id="Paginado5" class="colorLiga"></a>
<a id="Siguiente" onclick="nuevoConjunto(1)" class="colorLiga" ></a>
</td>
en el script:
function memoriaGrid(pagina, obtenerConjuntoActivo)
{
limpiarGrid();
imprimirPaginado(obtenerConjuntoActivo);
var items = req.responseXML.getElementsByTagName("objeto"+pagi na);
......
}
function nuevoConjunto(moverPagina)
{
if (moverPagina==1)
{
var obtenerConjuntoActivo =
Number(document.getElementById("Paginado1").getAtt ribute("name")) + 4;
memoriaGrid(obtenerConjuntoActivo+1,obtenerConjunt oActivo);
}
if (moverPagina==0)
{
var obtenerConjuntoActivo =
Number(document.getElementById("Paginado1").getAtt ribute("name")) - 6;
memoriaGrid(obtenerConjuntoActivo+1,obtenerConjunt oActivo);
}
}
function eventAdder(objAttrib,handler,addFunction){
if ((!document.all)&&(document.getElementById)){
objAttrib.setAttribute(handler,addFunction);
}
//workaround for IE 5.x
if ((document.all)&&(document.getElementById)){
objAttrib[handler]=new Function(addFunction);
}
}
function imprimirPaginado(conjunto)
{
/**********************Paginado******************** ***********/
//Obtiene cuantas filas fueron encontradas en la consulta
var count=-1;
//Representa el numero a mostrar en el paginado
var contadorPagina=conjunto;
var paginado = req.responseXML.getElementsByTagName("grid");
//El numero de conjuntos de paginas mostradas
// Ejemplo (< 1 2 3 4 5...> ; <6 7>) = 2
var conjuntoActivo;
for (var i=0;i<paginado.length;i++)
count=getElementTextNS("", "Paginado", paginado[i], 0);
var arrPagina =document.getElementsByTagName('a');
for(var z=0;z<arrPagina.length;z++)
{
if (Mid(arrPagina[z].id,1,8)=='Paginado')
{
if (contadorPagina < count)
{
arrPagina[z].innerText = (contadorPagina+1);
arrPagina[z].name = (contadorPagina+1);
eventAdder(arrPagina[z],"onclick","memoriaGrid(" + (contadorPagina+1) + "," + (conjunto) + ")");
}
contadorPagina = contadorPagina+1;
}
}
if ((conjunto+5) < count)
{
// MostrarFilas('Siguiente');
document.getElementById("Siguiente").innerText = "...>";
if ((conjunto) > 4)
//MostrarFilas('Anterior');
document.getElementById("Anterior").innerText = "<...";
else
// OcultarFilas('Anterior');
document.getElementById("Anterior").innerText = "";
}
else
{
if ((conjunto) > 4)
// MostrarFilas('Anterior');
document.getElementById("Anterior").innerText = "<...";
document.getElementById("Siguiente").innerText = "";
}
}
function limpiarGrid()
{
/************************Limpiar Grid*********************/
var arrA =document.getElementsByTagName('a');
for(var z=0;z<arrA.length;z++)
{
if (Mid(arrA[z].id,1,4)=='Liga' || Mid(arrA[z].id,1,8)=='Paginado' || Mid(arrA[z].id,1,8)=='Anterior' || Mid(arrA[z].id,1,9)=='Siguiente')
arrA[z].innerText = "";
}
var arrTd =document.getElementsByTagName('TD');
for(var z=0;z<arrTd.length;z++)
{
if (Mid(arrTd[z].id,1,3)=='Cld' && Mid(arrTd[z].id,1,9)!='CldNombre' && Mid(arrTd[z].id,1,8)!='Paginado')
arrTd[z].innerText = "";
}
var arrTr =document.getElementsByTagName('TR');
for(var z=0;z<arrTr.length;z++)
{
if (Mid(arrTr[z].id,1,4)=='Fila')
OcultarFilas(arrTr[z].id);
}
}
Trate de identarlo, pero es un poco dificil aqui, haber como se ve, haber si tienen comentarios
Saludos |