我有一个非常好用的CakePHP应用程序。我正在从表中检索数据,它在页面视图下生成一个很长的单列列表。我想改变它,所以它填充3列HTML表。有人知道怎么做吗?
这是我需要在3列中输出显示的行....
echo $this->Form->input('Activity', array('multiple' => 'checkbox'));
现在它只是制作了一个很长的单个列,它在页面的长度上运行,带有多个复选框。
有人有解决方案吗?
答案 0 :(得分:0)
试试这段代码......我希望它会对你有帮助。
echo $ this-> Form-> input(' Activity',array(' cols' => 3));
答案 1 :(得分:0)
试一试
echo $ this-> Form-> input(' Activity',array(' cols' => 3,' type' => ' textarea的'));
OR
echo $ this-> Form-> textarea( ' textarea的&#39 ;, 数组('行' =>' 5',' cols' =>' 5') );
答案 2 :(得分:0)
试试这个
<?php echo $this->Form->input('Activity', array(
'type'=>'checkbox',
'multiple' => 'multiple',
'format' => array('before', 'input', 'between', 'label', 'after', 'error')
)); ?>
答案 3 :(得分:0)
首先,您必须将数据分为3部分。您可以通过对数据进行计数并除以3(伪代码,未经测试)来做到这一点:
$splitArray = [];
$colHeaders = ['col1', 'col2', 'col3'];
foreach($checkboxes as $index => $checkbox) {
array_push($splitArray[floor(count($checkboxes)/3)], $checkbox);
}
HTML帮助器可以帮助您构建表:
<table>
<?= $this->Html->tableHeaders($colHeaders) ?>
<?= $this->Html->tableCells($splitArray)) ?>
</table>