• smarty section循环成两列的问题


    问题描述:

    用section循环,只能循环成一列。也就是一个tr只能带一个td。

    现在要实现一个tr带两个td。

    解决方案:

    判断序号,根据奇偶来决定什么时候出现<tr>开始,什么时候出现</tr>结束。

    偶数时开始,奇数时结束。

    这样,就能实现一个tr中可以包含多个td了。

    代码:

    <!--{section loop=$aUserAnswer name=data step=1}-->
                <!--{if $smarty.section.data.index is even}-->
                <tr bgcolor="#f7f7f7"  height="50"  align="left">
                <!--{/if}-->
                 <td class="font14_s pl40">&nbsp;<!--{$aUserAnswer[data].realname}-->:&nbsp;&nbsp;<input type="text"  class="input_233" value="<!--{$aUserAnswer[data].score}-->"/></td>
                <!--{if $smarty.section.data.index is odd}-->
                </tr>
                <!--{/if}-->
                <!--{if $smarty.section.data.last}-->
                <!--{if $smarty.section.data.index is even}-->
                <td class="font14_s pl40">&nbsp;</td>
                </tr>
                <!--{/if}-->
                <!--{/if}-->
                <!--{/section}-->

    代码解析:

    通过$smarty.section.data.index来进行判断,如果是偶数,则<tr bgcolor="#f7f7f7" height="50" align="left">

    如果是基数则</tr>

    通过if $smarty.section.data.last判断最后一个元素是奇偶,如果是偶数,则补上一个td+一个tr。

    这样问题就得到解决了。

    效果图如下:

  • 相关阅读:
    使用IDEA整合SSM框架
    宏任务与微任务
    setTimeout的实现及其问题
    JS的闭合(Closure)
    this详解
    JS的作用域和作用域链
    JS的执行上下文
    JS内存机制
    抽象工厂模式(c++实现)
    迭代器模式(c++实现)
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/2957997.html
Copyright © 2020-2023  润新知