【问题标题】:dynamicly create table with n'th colspans使用第 n 个 colspan 动态创建表
【发布时间】:2014-08-24 05:56:19
【问题描述】:

所以我正在尝试使用 php(在本例中为 laravel 刀片模板引擎)呈现表格。 这个想法是,当你有一个日期时间等于它的下一个 item_date 时,它​​会跨度。

我已经能够让它与 2 的 colspan 一起工作

@if ($index != $timesheetweeks.length() - 1 && $timesheetweek[$index]['start_date'] == $timesheetweek[$index + 1]['start_date'])
        <td colspan="2">{{{ $timesheetweek->start_date }}}</td>
    @elseif ($index != 0 && $timesheetweek[$index]['start_date'] == $timesheetweek[$index - 1]['start_date'])
    @else
        <td>{{{ $timesheetweek->start_date }}}</td>
    @endif

但是如果你有 3 个或更多呢?

【问题讨论】:

  • 您可以将所有日期添加到 $array,然后将 count($array) 与 count(array_unique($array)) 进行比较以了解要跨越多少列;)

标签: javascript php laravel laravel-4 laravel-3


【解决方案1】:

我会说尝试将此逻辑放置在您的控制器中,并使用如下格式将元素传递给视图:

elements [
    1 => element1,
    2 => array(
        element2,
        element3
    ),
    3 => element4
]

元素 2 和 3 共享相同的“开始日期”。

在你看来:

// foreach ( ... as element )
@if ( is_array($element) )
    // found some share dates
    // td colspan=count($element)
@else
    // no share
@endif

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    相关资源
    最近更新 更多