puoi fare in vari modi diversi
1- e' lecito applicare piu' classi ad un elemento, quindi un tr puo' avere class="class2, on",
la seconda classe avrebbe il sopravvento sulle medesime proprieta' della prima (se non sbaglio, fallisce solo su IE mac, ormai considerato defunto)

2- aggiungi la classe ai td (o a tutti i td del tr), con l' effetto di coprire il background del tr

3- aggiungi un attributo arbitrario al tr
riferimentoTr.oldClass=classePrecedente
cambi il className a on, oppure a quanto presente in oldClass per ripristinare lo stato iniziale

4- fondamentalmente il checkbox segnato o meno determina il cambio di colore
(e avere un id per ogni checkbox ti semplifica pure il procedimento)
se ogni volta che viene segnato un checkbox che non e' mai stato segnato prima aggiungi in un array creato in precedenza un
nomeArray[idCheckbox]=vecchiaClasse
quando la classe va ripristinata cicli alla ricerca dell' id del checkbox e associ al tr la vecchiaClasse

queste le prime idee che mi vengono in mente..

ciao