我正在使用PHP,我正在使用结果数组迭代一个表...我想为它添加行颜色和交替行颜色....如何做?任何建议......
<table id="chkbox" cellpadding="0" cellspacing="2"
width="100%" class="table_Style_Border">
<tr>
<td style="width:150px" class="grid_header" align="center">RackName</td>
<td style="width:150px" class="grid_header" align="center">LibraryName</td>
<td style="width:200px" class="grid_header" align="center">LibrarianName</td>
<td style="width:200px" class="grid_header" align="center">Location</td>
<td style="width:1%" class="grid_header"></td>
</tr>
<? if(isset($comment))
{ echo '<tr>
<td class=table_label colspan=5>'.$comment.'</td></tr>'; } ?>
<?php foreach($rackData as $row) { ?>
<tr>
<td align="left" class="table_label">
<?=$row['rack_name']?>
</td>
<td align="left" class="table_label">
<?=$row['library_name']?>
</td>
<td align="center" class="table_label">
<?=$row['librarian']?>
</td>
<td align="center" class="table_label">
<?=$row['location']?>
</td>
<td align="center">
<input type="checkbox" name="group" id="group"
value="<?=$row['rack_id']?>" onclick="display(this);" >
</td>
</tr>
<? } ?>
<table>
修改
<?php foreach($rackData as $key => $row) { ?>
<?php printf('<tr class="%s">', ($key % 2) ? : 'rowcolor' : 'alternaterowcolor');?>
它似乎没有你的语法....
错误:
解析错误:语法错误,第238行的D:\ xampp \ htdocs \ codeigniter_cup_myth_new \ system \ application \ views \ rackdetails.php中的意外':'
答案 0 :(得分:3)
使用modulo
<?php foreach($rackData as $key => $row) { ?>
<?php printf('<tr class="%s">', ($key % 2) ? 'odd' : 'even'); ?>
// ...
然后,您可以使用名称.odd
和.even
定义CSS类,并为其指定要与行交替的background-color
。
使用现代浏览器(读取:不是IE 8或更低版本),您也可以使用:nth-child pseudo class直接在CSS中执行此操作:
tr:nth-child(even) { background-color: #FFF; }
tr:nth-child(odd) { background-color: #EEE; }
答案 1 :(得分:1)
为了简化您的服务器代码,您可以使用javascript来突出显示您的行,并将鼠标悬停/处理添加到行中以执行任何操作。
使用jquery和许多示例非常容易。
答案 2 :(得分:0)
<?php
include("BLL/index.php");
$objBLL = new BLL();
$result = $objBLL->SelectQuery();
$ID = $i;
$i = 1;
?>
<table border="1" width="50%">
<tr>
<td>ID</td>
<td>NAME</td>
<td>DESCRIPTION</td>
</tr>
<?php
while ($row = mysql_fetch_assoc($result)) {
if ($i % 2 != 0) {# An odd row
$rowColor = "orange";
echo '<tr bgcolor="' . $rowColor . '"><td >' . $row["ID"] . '</td><td >' . $row["Name"] . '</td><td >' . $row["Description"] . '</td></tr>' . "\r\n";
$i++;
}else{ # An even row
$rowColor = "green";
echo '<tr bgcolor="' . $rowColor . '"><td >' . $row["ID"] . '</td><td >' . $row["Name"] . '</td><td >' . $row["Description"] . '</td></tr>' . "\r\n";
$i++;
}
}
?>
</table>