数据未显示在选项卡中

时间:2014-11-05 06:16:54

标签: php html css

我正在显示链接到CMS的数据库中的数据。我得到的问题是只显示我的一个标签中的数据。假设我有两个选项卡,Tab 1,Tab 2.而不是Tab 1处于活动状态,Tab 2处于活动状态,并且显示Tab 2的数据。但是,当我单击Tab 1时,不会显示与Tab 1相关的数据。存在相同的数据,即表2数据。 我正在使用映射来获取相应Tab的ID。

<ul class="tabs" data-tab>
<?php 
    if(isset($X['list_by_parent_id'][0]) && !empty($X['list_by_parent_id'][0]))
    {
        $top_category_index=1;
        foreach ($X['list_by_parent_id'][0] as $category_id)
        { 
        ?>
            <li class="tab-title <?php if($top_category_index==1){  echo "active"; }?>"><a href="#category-<?php echo $top_category_index++ ?>" class="category-name"><?php echo $SITE['tmp']['product_categories'][$category_id] ?></a></li>
        <?php
        }
    } 
?>
</ul>

X 是一个全局变量,它是一个数组并存储所有内容。

这是映射和显示内容的代码。

<div class="category-content">
                <div class="menu-cat-content tabs-content">
                <?php if(isset($SITE['category_list_by_parent_id'][0]) && !empty($SITE['category_list_by_parent_id'][0]))
                    {
                        $top_category_index_mapped=1;
                        foreach ($SITE['category_list_by_parent_id'][0] as $category_id)
                        { ?>
                        <div id="category-<?php echo $top_category_index_mapped; ?>" class="content <?php if($top_category_index_mapped++==1) { ?>active<?php } ?>">
//code for content
</div>

呈现HTML:

<div class="category-content">
                <div class="menu-cat-content tabs-content">
                                        <div id="category-1" class="content active">

                        <!--sub category 1-->
                                                    </div><!--sub-category-clearfix2-->
                        <!--sub category 2 ends-->


                    </div> <!--category-div, index_mapped -->
                                            <div id="category-2" class="content active">

                        <!--sub category 1-->
                                                    </div><!--sub-category-clearfix2-->
                        <!--sub category 2 ends-->


                    </div> <!--category-div, index_mapped -->
                                            <div id="category-3" class="content active">

编辑:我看到top_category_index_mapped在category- * top_category_index_mapped中设置为1。我替换它并渲染html现在看起来像这样。

1 个答案:

答案 0 :(得分:0)

这一行:

$top_category_index=1;

为第一个标签设置$top_category_index1。这一行:

<li class="tab-title <?php if($top_category_index==1){  echo "active"; }?>

等于这两次第一次:

<li class="tab-title active">

因为++运算符的属性。 Read more here

例如:

$a = 5;
echo "Should be 5: " . $a++ . "<br />\n";
echo "Should be 6: " . $a . "<br />\n";

由于您似乎只使用了两个标签进行了测试,这就是您获得这些结果的原因所在。包含渲染的html可能也会有所帮助。