我有一个重复的表行。
<table id="ads-content"><tr class="<?php
if ($i & 1) {
echo'alternate';
} else {
echo '';
}
?>">
<td align="left"><?php echo $i; ?></td>
<td align="left">
//some code to retrieve and print db values. at here $pcount is initialized. I can't initialize $pcount before tr.
</td>
<td><?php
if ($pcount != 1) {
echo "<img src='" . plugin_url('images/pencil2.png') . "'>";
} else {
echo "<img src='" . plugin_url('images/tick.jpg') . "'>";
}
?> </td>
</tr></table>
问题:
我需要更改<tr>
的bg颜色,其中包含图像&#34; tick.jpg&#34;。
我尝试了很多方法,但没有任何方法填满整行。
我该怎么做?
答案
我修好了。我将分享我以下修复的代码,以便它可以帮助其他人:
<table id="ads-content"><tr class="<?php
if ($i & 1) {
echo'alternate';
} else {
echo '';
}
?>">
<td align="left"><?php echo $i; ?></td>
<td align="left">
//some code to retrieve and print db values. at here $pcount is initialized.i can't initialize $pcount before tr.
</td>
<td><?php
if ($pcount != 1) {
echo "<img src='" . plugin_url('images/pencil2.png') . "'>";
} else {
<div class="to_class" style="display=none;"><?php echo "new"; ?></div>
echo "<img src='" . plugin_url('images/tick.jpg') . "'>";
}
?> </td>
</tr></table>
<script type="text/javascript">
$(function(){
$('#ads-content tr').each(function() {
var obtained= $(this).find("td").eq(2).find(".to_class").text();
$(this).addClass(obtained);
});
});
</script>
注意:eq()从零开始, 然后我为课程提供了背景颜色&#34; new&#34;在css部分。
答案 0 :(得分:0)
恕我直言,如果你在实际打印TR之前无法初始化$ pcount,你一定要考虑改变它。你做错了什么。 也许这会有所帮助:
//HERE: some code to retrieve
$output = '';
if ($pcount != 1) {
$output .= '<tr style="background:#FFF;">';
} else {
$output .= '<tr style="background:#AAA;">';
}
$output .= '<td align="left">';
$output .= ''; // HERE: print db values.
$output .= '</td>';
$output .= '</tr>';
echo $output;
否则,如果你根本不能帮助它,你可以使用jQuery,例如:
$('tr').each(function() {
if( $(this).find('img[src="images/tick.jpg"]').length > 0 ) {
$(this).css('background','#FFF');
} else {
$(this).css('background','#AAA');
}
});
答案 1 :(得分:0)
因为您同时添加图像。我想,在jQuery上添加一个不同的类到tick.jpg图像跟踪它。
<img src="tick.jpg" class="tick_img">
$('.tick_img').parents('tr').css('background', 'red');
答案 2 :(得分:-1)
将$i
放在<tr>
中id="row-id-<?php echo $i; ?>"
然后在if($pcount != 1)
内包含类似的内容:
<style type="text/css" scoped> /* added for future proofing */
#row-id-<?php echo $i; ?>{
background-color:red;
}
</style>