prima opzione, la piu' semplice
tutto il resto resta come hai scritto tucodice:function evidenziaTd(ck){ var flag=ck.checked; while(ck=ck.parentNode){ if(ck.tagName=='TR'){ if(!flag) ck.className=ck.className.replace(' on',''); else if(ck.className.indexOf(' on')<0) ck.className+=' on'; } } }