[英]Hide table row if data doesn't exist
我想知道如果自定义字段中没有数据,是否有代码可以用来防止表行形成。
例如,这是我的表:
<tr>
<td><?php echo $place_1; ?></td>
<td><?php echo $person_1; ?></td>
<td><?php echo $status_1; ?></td>
<td><a href="<?php echo $website_1; ?>"></a></td>
</tr>
<tr>
<td><?php echo $place_2; ?></td>
<td><?php echo $person_2; ?></td>
<td><?php echo $status_2; ?></td>
<td><a href="<?php echo $website_2; ?>"></a></td>
</tr>
<tr>
<td><?php echo $place_3; ?></td>
<td><?php echo $person_3; ?></td>
<td><?php echo $status_3; ?></td>
<td><a href="<?php echo $website_3; ?>"></a></td>
</tr>
如何使“如果$ place_2为空,则隐藏表2和3的所有表行?”
任何帮助表示赞赏!
您可以简单地使用PHP仅在行不为空时输出该行:
...
</tr>
<?php if ($place_2 != "") { ?>
<tr>
<td><?php echo $place_2; ?></td>
<td><?php echo $person_2; ?></td>
<td><?php echo $status_2; ?></td>
<td><a href="<?php echo $website_2; ?>"></a></td>
</tr>
<?php } ?>
<tr>
...
这种方法将tr
元素包装在if
块中。 还有其他许多方法可以达到相同的结果,这可能会在其他答案中有所体现。 根据您的问题,当$place_2
为空时,您似乎也希望抑制$place_3
。 我假设$place_3
在这种情况下为空,因此您可以对tr
元素应用相同的方法,用$place_2
替换$place_3
。
您还可以使用WHILE循环。 这将适用于任意数量的行。 只需用While
条件中要检查的行数替换4
<?php
$i=0;
while($i<4)
{
if($place_.$i == "")
break; // if $place_ variable is empty no further rows are printed.
else
{
?>
<tr>
<td><?php echo $place_.$i; ?></td>
<td><?php echo $person_.$i; ?></td>
<td><?php echo $status_.$i; ?></td>
<td><a href="<?php echo $website_.$i; ?>"></a></td>
</tr>
<?php
} // closing bracket of else
$i = $i + 1;
} //end of while loop
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.