如果满足条件,则隐藏表中的列

时间:2015-03-04 11:17:12

标签: php html

我使用下表来表示3个条件,通过变量传递值。

在我的一个条件中,我只有3个列,即$h2对于一个条件将为空。 if($h2=="")我想隐藏整个专栏。

我该怎么做?

这是我的代码:

<table id="usertracking" >
<thead>
<tr>
<?php   
echo'<td><h3>'.$h1.'<h3></td>'; 
echo'<td><h3>'.$h2.'<h3></td>';
echo'<td><h3>'.$h3.'<h3></td>';
echo'<td><h3>'.$h4.'<h3></td>';                     
?>  
</tr>
</thead>
<tbody>
        <?php
        for($i=$start;$i<$end;$i++)
        {
            echo'<tr>'; 
            echo'<td>'.$ARRAY[$i]['MpwName'].'</td>';
            echo'<td>'.$ARRAY[$i]['PatientName'].'</td>';
            echo'<td>'.$ARRAY[$i]['PatientAddress'].'</td>';
            echo'<td>'.$ARRAY[$i]['New'].'</td>';
            echo'<tr>';
        }   
        ?>
</tbody>
</table>

5 个答案:

答案 0 :(得分:3)

您可以执行以下操作:

$display_column1=$display_column2=$display_column3=$display_column4=true;
if($h1=="")$display_column1=false;
if($h2=="")$display_column2=false;
...
echo'<tr>'; 
if($display_column1)echo'<td>'.$ARRAY[$i]['MpwName'].'</td>';
if($display_column2)echo'<td>'.$ARRAY[$i]['PatientName'].'</td>';
...

更好的是,让它循环。

答案 1 :(得分:2)

您可以检查$h2是否为空。如果没有,请打印:

<table id="usertracking" >
<thead>
<tr>
<?php   
echo'<td><h3>'.$h1.'<h3></td>'; 
if (!empty($h2))                        // check
    echo'<td><h3>'.$h2.'<h3></td>';     // print
echo'<td><h3>'.$h3.'<h3></td>';
echo'<td><h3>'.$h4.'<h3></td>';                     
?>  
</tr>
</thead>
<tbody>
        <?php
        for($i=$start;$i<$end;$i++)
        {
            echo'<tr>'; 
            echo'<td>'.$ARRAY[$i]['MpwName'].'</td>';
            if (!empty($h2))                                  // check
                echo'<td>'.$ARRAY[$i]['PatientName'].'</td>'; // print
            echo'<td>'.$ARRAY[$i]['PatientAddress'].'</td>';
            echo'<td>'.$ARRAY[$i]['New'].'</td>';
            echo'<tr>';
        }   
        ?>
</tbody>
</table>

答案 2 :(得分:2)

只需将if条件放在您需要的每个回音之前:

//in the Head
if ($h2) echo'<td><h3>'.$h2.'<h3></td>';

在正文中,在列数据:

if ($h2) echo'<td>'.$ARRAY[$i]['PatientName'].'</td>';

答案 3 :(得分:1)

使用CSS和PHP的组合,您可以尝试类似

的内容
<td style="display:<?/*Your condition here*/?>;">

答案 4 :(得分:0)

使用此

//in the Head
if ($h2 != ""){ echo'<td><h3>'.$h2.'<h3></td>'; }

// in loop
if ($h2!= ""){ echo'<td>'.$ARRAY[$i]['PatientName'].'</td>'; }