Ben dinamik bir listesini tıklayarak yeni dinamik bir listesini görüntülemek için çalışıyorum. Neden ben onları dinamik liste diyorsunuz? Veri veritabanından olduğu için.
Benim idea şirketlerinden, ben bir şirket tıkladığınızda, şirketteki tüm sitelerin bir listesi görüntülenir listesini oluşturuyor; I bir şirketin bir siteyi tıklatın Ve sonra, sitedeki tüm çalışanların bir listesi görüntülenir.
Şimdi ben bir sorun araya geldi. I şirketler listesinde herhangi bir öğeyi tıklattığınızda, şirket listenin son öğesi sitelerin bir listesini gösterir. I siteler listesinde herhangi bir öğeyi tıklatın zaman, sitelerde son öğenin çalışanlar listesini gösterdi.
Neden biliyor musunuz?
İşte kod ve sonuç görüntü:
<script language="JavaScript">
function toggle(id,id2,id3) {
var state = document.getElementById(id).style.display;
if (state == 'block') {
document.getElementById(id).style.display = 'none';
if (id2 != undefined)document.getElementById(id2).style.display = 'none';
if (id3 != undefined)document.getElementById(id3).style.display = 'none';
} else {
document.getElementById(id).style.display = 'block';
}
}
</script>
<style type="text/css">
#main{
position:relative;
top:20px;
left:20px;
width:200px;
background: lightblue;
}
#hidden {
position:relative;
top:5px;
left:280px;
width:200px;
background: lightgrey;
display: none;
}
#hidden2 {
position:relative;
top:-12px;
left:580px;
width:200px;
background: lightgreen;
display: none;
}
#hidden3 {
position:relative;
top:100px;
left:20px;
width:200px;
background: lightpink;
display: none;
}
</style>
<?php
error_reporting(E_ALL ^ E_NOTICE);
include("./conn/connect.php");
$query = "SELECT * FROM entreprise ORDER BY id";
$result = mysql_query($query) or die("result failed: ".mysql_error());
?>
<div id="main" >
<?php
echo "<ul>";
while($row = mysql_fetch_assoc($result)){
echo "<li onclick=\"toggle('hidden','hidden2','hidden3');\">".$row['name'].'<li>';
$query2 = "SELECT * FROM site WHERE eid = '".$row['id']."'";
//$query2 = "SELECT * FROM site WHERE eid = ".$row['id'];
//$result2 = mysql_query($query2) or die("query2 result error".mysql_error());
$result2 = mysql_query($query2) or die("query2 result error".mysql_error());
}
echo "</ul>";
?>
</div>
<div id="hidden" >
<?php
echo "<ul>";
while($row2 = mysql_fetch_assoc($result2)){
echo "<li onclick=\"toggle('hidden2','hidden3')\">".$row2['name'].'< >';
$query3 = "SELECT * FROM salarie WHERE siteid =".$row2['id'];
//echo $query3;
$result3 = mysql_query($query3) or die("query3 result error".mysql_error());
}
echo "</ul>";
?>
</div>
<div id="hidden2" >
<?php
echo "<ul>";
while($row3 = mysql_fetch_assoc($result3)){
echo "<li onclick=\"toggle('hidden3')\">".$row3['prenom'].'< >';
$query4 = "SELECT * FROM salarie WHERE id =".$row3['id'];
$result4 = mysql_query($query4) or die("query4 result error".mysql_error());
}
echo "</ul>";
?>
</div>
<div id="hidden3">
<?php
echo "<table>";
while($row4 = mysql_fetch_assoc($result4)){
echo "<tr><td>".$row4['prenom'].'</td>';
echo "<td>".$row4['nom'].'</td></tr>';
}
echo "</table>";
?>
</div>
Sonuç görüntü: