我正在创建一个包含以下代码的表格字段的三列表格。每行有三列。如果字段总数不是三的倍数,则最后一行在其余列中不包含空白表单字段。
如何修改此内容以填写空白表单字段的剩余列?
<?php
$listCount = count($col);
for ($i = 0; $i < $listCount; ++$i) {
if($i % 3 == 0) {
echo '<tr class="list_row">';
} ?>
<td><input type="text" style="width: 190px;" name="inputCol1[]" value="<?php echo $col[$i] ?>" /></td>
<?php
if($i % 3 == 3) {
echo '</tr>';
}
}
?>
答案 0 :(得分:0)
您需要在for
循环后完成最后一行:
for ($i = 0; $i < $listCount; ++$i) {
...
}
if ( ($i % 3) < 2 ) {
do {
echo "<td>...</td>";
$i++;
} while ($i % 3 != 2);
}
此外,请查看您问题下方的评论,因为$i % 3
永远不会是3
。
注意:我真的应该将if
和do
合并到一个不错的条件/循环中,但为时已晚,这应该至少有效......
答案 1 :(得分:-1)
只需更改
if($i % 3 == 3) {
echo '</tr>';
}
到
if($i % 3 == 2) {
echo '</tr><br />';
}
它会起作用。