【问题标题】:In PHP, how does one conditionally format a row based on cell value在 PHP 中,如何根据单元格值有条件地格式化一行
【发布时间】:2018-03-01 05:31:43
【问题描述】:

鉴于以下代码,我想突出显示$listing->Full == '1' 所在的表格行。

<table id="datatable-responsive" cellspacing="0" width="100%">
   <thead>
      <tr>
         <th align="center">Qty</th>
         <th align="center">Posted Date</th>
         <th align="center">Expiration</th>
         <th align="center">Full Pkg</th>
      </tr>
   </thead>
   <tbody>
      <?php foreach($listings as $listing): 
         ?>
      <tr>
         <td align="center"><?php echo $listing->quantity; ?></td>
         <td align="center"><?php 
            $pdate = new DateTime($listing->posted_at);
            echo $pdate->format('m/d/y'); ?></td>
         <td align="center"><?php
            $date = new DateTime($listing->expdate);
            echo $date->format('m/d/y'); 
            ?>  
         </td>
         <td align="center"><?php 
            if($listing->full == '1'):
            ?>
            <?php echo "Yes"; ?>
            <?php else:
               ?>
            <?php echo "No"; ?>
            <?php endif; ?>
         </td>
         <?php endif; ?>
      </tr>
      <?php endforeach; ?> 
   </tbody>
</table>

理想情况下,突出显示颜色应为 FFFFE6。任何帮助是极大的赞赏。这是一个 MVC 站点,因此更改 CSS 不是一种方便的选择。

【问题讨论】:

  • 您是否尝试将 IF 语句放入类或样式参数中并添加相应的类或样式声明以将背景颜色更改为所需的颜色?
  • 为什么MVC会影响你是否可以改变css?
  • 不要将样式/格式代码直接放入 html 结构中。改为使用 css 类并创建自定义样式表文件。
  • 您需要养成accepting answers 的习惯,它可以帮助您解决问题。您将获得积分,并鼓励其他人帮助您。
  • 我有一个 CSS,但是 Baker 先生,但我不希望这项工作级联到项目的其余部分。

标签: php html-table format row


【解决方案1】:

在设置样式之前进行测试。这是一个内联示例:

<?php
if($listing->full == '1'):
?>
<td align="center" style="background:#FFFFE6"> 
    <?php echo "Yes"; ?>
    <?php else: ?>
<td align="center"> 
    <?php echo "No"; ?>
    <?php endif; ?>
</td>
<?php endif; ?>

这是一个在 CSS 中使用类的示例:

CSS

.highlight {
    background: #FFFFE6;
}

PHP/HTML

<?php
if($listing->full == '1'):
?>
<td align="center" class="highlight"> 
    <?php echo "Yes"; ?>
    <?php else: ?>
<td align="center"> 
    <?php echo "No"; ?>
    <?php endif; ?>
</td>
<?php endif; ?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-03
    • 1970-01-01
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-07
    • 1970-01-01
    相关资源
    最近更新 更多