单击1个产品类别时显示产品的div列表(并关闭其他div)

时间:2013-12-26 09:18:23

标签: php jquery html

我有一个产品类别列表,我从具有唯一ID的mysql dbb中获取。 当我点击一个产品类别时,我想显示此类别的产品列表并关闭另一个(如果之前打开了一个div)。 但我不知道我该怎么做。

PHP

<?php
echo "<script type='text/javascript'>
        $(document).ready(function() {";
$result0 = mysql_query("select * from $table order by idcat");
while ($r0 = mysql_fetch_array($result0)) {
    $idcat_jquery = $r0['idcat'];
    echo '$(\'#lienmenu_'.$idcat_jquery.'\').click(function() {
        $(\'#display_product_info'\').hide('.idcat.');
        $(\'#display_product_info'\').show(' . idcat . ');
        });';
}

echo ' });';
echo '</script>';

$result1 = mysql_query("select * from $table order by idcat");
while ($r1 = mysql_fetch_array($result1)) {
    $cat = $r1['cat'];
    $idcat = $r1['idcat'];
    echo '<input value="' . $cat . '" id="idcat" class="submit" type="submit"/>';
}
?>
<div id="display_product_info" style="display:none;">
<?php
$result1 = mysql_query("select * from $table2 where idcat='$idcat' order by  productname");
while ($r1 = mysql_fetch_array($result1)) {
    $productname = $r1['productname'];
    $idproduct = $r1['idproduct'];
    echo '' . $productname . '<BR>';
}
?>
</div>  

2 个答案:

答案 0 :(得分:1)

您可以为包含类别产品的活动DIV设置一些CSS唯一类

当您打开其他类别产品时,请删除有效的唯一CSS类,并将该唯一的CSS指定给您的新类别 - &gt;产品DIV容器。

修改

如果您使用唯一的DIV {id}维护您的category-&gt;产品,则可以轻松管理您的有效DIV。

您可以读取所有DIV并为所有DIV应用非活动CSS类(使用隐藏选项)并应用活动CSS类(使用show选项)。

<强>示例:

<div id="container">    
     <div id="cat1"> </div>    
     <div id="cat2"> </div>    
     <div id="cat3"> </div>    
    <div id="cat4"> </div> 
</div>

$("div#container > div").each(function(){
    var element_id = $(this).attr("id");
    $("#"+element_id).hide();    
});

哪个cateogry - &gt;您想要展示的产品获得DIV ID和:

$("#Category_DIV_ID").show();

答案 1 :(得分:0)

添加课程:

$('#display_product_info').addClass("active");

删除课程:

$('#display_product_info').removeClass("active");

然后使用css给该课程一些风格。