affichage masquage de DIV
Bonjour, j'ai créé pour mon application une table en php qui se remplie dynamiquement suivant la requete sql que l'on lui injecte; pour ameliorer le tout , j'ai mis au point un systeme de multipaging qui fonction a l'aide d'un systeme de generation de DIV. Tout ces DIV on comme attribut de style visibility:hidden;display:none; saul un qui est celui affiche
pour cela j'ai mis au point un javascript:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| function gotopage(elem,page)
{
// tout les elements seront cachées
elementRef = document.getElementById(elem);
//if (defineDEBUG_MODE)
//alert(elementRef);
for (var i = 0; i < elementRef.children.length; i++)
{
if (elementRef.children[i].tagName == "div")
{
elementchild= elementRef.children[i];
elementchild.style.visibility="hidden";
elementchild.style.display="none";
}
}
// Seul la page selectionné sera affiché
var elem = elem+'-page'+page;
//alert(elem);
document.getElementById(elem).style.visibility="visible";
document.getElementById(elem).style.display="block";
elementRef = document.getElementById(elem);
//alert(elementRef);
} |
voici le code de ma datatable
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
| public function Datatable($id , $titre , $procedure ,$style="",$extra="",$extra_ligne=null,$max=null)
{
$this->debug_message("Construction du control DataTable $id");
echo($titre.'<div title="'.$titre.'" id="'.$id.'" style="'.$style.'"'.$extra.' >');
//echo($titre.'<table title="'.$titre.'" value="'.$id.'" style="'.$style.'"'.'"'.$extra.' >');
$list_row = $this->exec_odbc($procedure,"sp");
if (!empty($list_row))
{
$nbpage=1;$page=1;
echo (count($list_row)." réponse(s)<br/>");
foreach($list_row as $row)
{
if (!empty($max))
{
if ($nbpage==1)
{
echo('<div id="'.$id.'-page'.$page.'" style=" ');
if ($page>1)
echo('display:none;visibility: hidden;');
echo('" >');
}
}
echo ('<span class="ligne'.($i % 2).'">');
//echo ('<tr class="ligne'.($i % 2).'">');
//echo('<td><a href="http://'.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"].'?id='.$id.'&num='.$row[1].'">'.$row[2].'</a>    </td>');
echo('<a href="http://'.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"].'?id='.$id.'&num='.$row[1].'">'.$row[2].'</a>    ');
if (!empty($extra_ligne))
{
foreach($extra_ligne as $ligne)
{
echo ('    <a href="'.$ligne[1].'?id='.$id.'&num='.$row[1].'">'.$ligne[0].'</a>');
//echo ('<td>    <a href="'.$ligne[1].'?id='.$id.'&num='.$row[1].'">'.$ligne[0].'</a></td>');
}
}
//echo('</tr>');
echo('</span><br/>');
$i++;$nbpage++;
if (!empty($max) && $nbpage>=$max)
{
$nbpage=1;$page++;
echo ('</div>');
}
}
echo('</div>');
if (!empty($max))
{
?><table style="visibility:visible;"><tr><td><?php
for($nbpage=1;$nbpage<=intval(count($list_row)/$max);$nbpage++)
{
echo('<a href="javascript:gotopage(');
echo ("'".$id."' ,".$nbpage.")");
echo ('" onClick="gotopage(');
echo ("'".$id."',".$nbpage.");");
echo ('" >'.$nbpage.'</a>');
}
?></td></tr></table><?php
}
}
// echo("</div>");
//echo("</table>");
} |
Hors cela ne marche pas, quelqu'un pourrait il m'oorienté car je ne suis qu'un novice en javascript merci d'avance.