Sin liarte con IDS ni nada de eso, con DOM. Además puedes elegir la parte a colorear que quieras (siempre que esa parte sea un padre del INPUT que estamos checkeando):
Código PHP:
<script>
var colorMarcado="#5AB";
var colorDesactivado="#FFF";
function colorea(objActual, elem) {
var checkado=objActual.checked;
//buscamos el elemento a colorear, denotado con "elem"
while( objActual.nodeType==1 && objActual.tagName.toUpperCase()!=elem.toUpperCase() )
objActual=objActual.parentNode;
//objActual será entonces el primer padre con etiqueta "elem"
if(checkado) objActual.style.backgroundColor=colorMarcado;
else objActual.style.backgroundColor=colorDesactivado;
}
</script>
<form name="form1" action="" method="post">
<table border="1">
<tbody>
<tr>
<td>Colorear Fila</td>
<td align="center" class=ts><input name="op1" type="checkbox" onclick="colorea(this,'BODY')"></td>
</tr>
<tr>
<td>Colorear Fila</td>
<td align="center" class=ts><input name="op2" type="checkbox" onclick="colorea(this,'TABLE')"></td>
</tr>
<tr>
<td>Colorear Fila</td>
<td align="center" class=ts><input name="op3" type="checkbox" onclick="colorea(this,'TBODY')"></td>
</tr>
<tr>
<td>Colorear Fila</td>
<td align="center" class=ts><input name="op4" type="checkbox" onclick="colorea(this,'TR')"></td>
</tr>
<tr>
<td>Colorear Fila</td>
<td align="center" class=ts><input name="op5" type="checkbox" onclick="colorea(this,'TD')"></td>
</tr>
</tbody>
</table>
</form>
ikaroraul eso se hace igual, sólo que con un evento onclick en la celda misma.