日期:2014-05-16  浏览次数:20407 次

JS操作HTML背景色
HTML code

<tbody class="tableBody" >
    <tr class="odd" >
        <td>
<input type="checkbox" name="patientIds" value="123" 
onclick="changeBg(this);" /> </td>
<td>123</td>
<td>7</td>
<td>123</td>
<td width="120px" >2012-12-18</td>
<td>1231312.15</td>
<td>0月</td>
       </tr>
</tbody>


我想要的效果是点击每一行的这个checkbox,通过这个函数changeBg,改变这一行TR的背景颜色,
真实数据有多行记录,无法确定多少行。
该怎么传参呢? this.parent?



------解决方案--------------------
<table>
<tbody class="tableBody" >
<tr class="odd" >
<td>
<input type="checkbox" name="patientIds" value="123" 
onclick="changeBg(this);" />
</td>
<td>123</td>
<td>7</td>
<td>123</td>
<td width="120px" >2012-12-18</td>
<td>1231312.15</td>
<td>0月</td>
</tr>
</tbody>
</table>
<script>
function changeBg(t){
t.parentNode.parentNode.style.background = 'red';
}
</script>


------解决方案--------------------
function changeBg(obj){
if(obj.checked){
obj.parentNode.parentNode.style.background = 'red';
}
else{
obj.parentNode.parentNode.style.background = 'none';
}
}