在foreach下显示隐藏div

时间:2014-07-28 16:32:33

标签: html foreach

我有这段代码:

{foreach from=$aProfiles item=aModules}
{foreach from=$aModules key=sPrivacy item=aProfile}
    <div class="table">
        <div class="table_left">{$aProfile.phrase}</div>
        <div class="table_right">contents ...........</div>         
    </div>
{/foreach}
{/foreach}

这会生成内容div div class="table"class="table_left"的许多div div class="table_right" .....

我想要的是: 隐藏div class="table_right" (disply:none), 点击div class="table"即可显示。然后,如果点击另一个div class="table",则会隐藏展开的div并点击显示class="table_right"

我成功地做到了这一点,但却展示了所有divs组中的第一个。 要明白我的意思,请参阅facebook账号,点击名字显示 如果点击用户名隐藏名称的信息并显示用户名信息,则输入名称信息。

对不起,如果我的英语很差。 非常感谢你。

1 个答案:

答案 0 :(得分:0)

使用Jquery来获取它......

  1. 创建一个带有样式显示的.hidden类:none;
  2. 然后使用jquery click函数添加删除类..
  3. 在循环中添加带有table_right的隐藏类
  4. .hidden{
       display: none;
    }
    

    <script>
    
    $(function(){
    
     $(".table").click(function(){
        $('.table_right').addClass('hidden');
        $(this).children('.table_right').removeClass('hidden');
     });
    
    });
    
    </script>
    

    和下面的前卫......

    {foreach from=$aProfiles item=aModules}
    {foreach from=$aModules key=sPrivacy item=aProfile}
        <div class="table">
            <div class="table_left">{$aProfile.phrase}</div>
            <div class="table_right hidden">contents ...........</div>         
        </div>
    {/foreach}
    {/foreach}