繁体   English   中英

如何通过类名隐藏td?

[英]How to hide td by class name?

我尝试在表中隐藏一些td,当用户单击按钮显示它们时。

首先

<?php
   $riskCounter=0;
?>

然后

<tr class ="headMit<?php echo $riskCounter ?>">
    <th colspan="6">Title</th>
</tr>
<?php foreach ($actions as $action) 
{ ?>
     <tr class="body"  class ="bodyMit<?php echo $riskCounter ?>">
          <td colspan="6" style="border: 1px solid  #b4b4b4;" height="40px">
               <?php echo nl2br($action->description); ?>
          </td>
     </tr>
<?php 
} ?>

在那之后

<script>
       $('.bodyMit'+<?=$riskCounter ?>).hide();         
       $('.headMit'+<?=$riskCounter ?>).hide();
</script>

在某个位置按钮:

<input type="button" class="niceButton" onclick="showMitAct('<?php echo $riskCounter ?>')" value="Show/hide" />

在另一个包含所有代码的foreach末尾(还有更多,但是我觉得其余的代码在这个问题上无关紧要)。

<?php
   $riskCounter++;
?>

显示/隐藏功能:

function showMitAct(id) {
    if($(".headMit"+id).is(':hidden'))
    {
        $(".headMit"+id).show();
        $(".bodyMit"+id).show();
    }
    else
    {
        $(".headMit"+id).hide();
        $(".bodyMit"+id).hide();
    }   
}

好的,有问题。 当我按一下按钮, tdclass=headMit(...)被隐藏和显示正确,但与TD class=bodyMit(...)是始终显示。

在我获得id而不是class之前,hide / show可以正常工作,但仅适用于bodyMit 显然...一个元素可以有一个id,但是类可以绑定到许多元素...

请告诉我我做错了什么或在哪里可以查找故障。

我不尝试您的建议,但感谢您的回答。

问题是,我使用了两次属性类。 当我更改名称时,一切都很好。

建议您使用MLS ID,但该类也可以。

您可以执行以下操作:

<tr class="body"  class ="bodyMit<?php echo $riskCounter ?>" onClick:"ocultarTr('bodyMit<?php echo $riskCounter ?>'")>

功能javascript:

function ocultarTr(idTr){
  $('.'+idTr).hide();   

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM