【问题标题】:alternate class to each LI foreach每个 LI foreach 的替代类
【发布时间】:2012-02-14 02:15:23
【问题描述】:

我正在尝试为每个 LI foreach 提供一个替代课程。

<li class="odd">
text
</li>
<li class="even">
text
</li>
<li class="odd">
text
</li>
<li class="even">
text
</li>

这是我的代码:

<ul>
 <?php foreach ($this->item->extra_fields as $key=>$extraField): ?>
 <?php if($extraField->value): ?>
  <li class="<?php echo ($key%2) ? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?>">
Text here
  </li>
 <?php endif; ?>
 <?php endforeach; ?>
</ul>

请任何人帮忙... 谢谢

【问题讨论】:

  • 表格数据使用表格没有错。
  • 键是什么?他们是数字吗?还是联想?

标签: php css class html-lists


【解决方案1】:

如果你愿意的话,jQuery 可以很容易地做到这一点。 :odd:even 选择器应该可以满足您的需求,而无需太多麻烦。

【讨论】:

    【解决方案2】:

    我会那样做 .. 它是独立于键的,你最好看看 li 类会是什么样子。

    <ul>
     <?php 
        foreach ($this->item->extra_fields as $key=>$extraField) {
           if($extraField->value) {
              $toggle = ($toggle=="odd"?"even":"odd");
              echo '<li class="',$toggle,' type',ucfirst($extraField->type),' group', $extraField->group,'">';
              echo 'Text here';
              echo '</li>';
           }
       } 
      ?>
    </ul>
    

    【讨论】:

      【解决方案3】:

      试试:

      <?php $count = 0; // need to set first value
      <?php foreach ($this->item->extra_fields as $key=>$extraField): ?>
         <?php if($extraField->value): ?>
            <li class="<?php echo (++$count % 2) ? "odd" : "even"; ?> type <?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?>">
               Text here
            </li>
         <?php endif; ?>
      <?php endforeach; ?>
      

      Link to pre/post increment docs if needed

      【讨论】:

      • 虽然您的代码确实有效并且您将获得 +1,但它比它需要的稍微复杂/令人困惑。我会将$count 初始化为0,并将条件更改为(++$count % 2)
      • 感谢您的回复...我收到以下错误:警告:在 /home/skiplan/public_html/modules/mod_k2bnr_content/tmpl/Default/default.php 中为 foreach() 提供的参数无效在第 81 行
      • @user991830 第 81 行是什么...我没有建议在 foreach 语句中更改任何内容!
      猜你喜欢
      • 2020-09-15
      • 2012-03-13
      • 2014-10-27
      • 2018-07-02
      • 2013-01-12
      • 1970-01-01
      • 1970-01-01
      • 2012-03-21
      • 2016-06-16
      相关资源
      最近更新 更多