mi spiego meglio...

ho una struttura di keywords ad albero, tipo

- bisnonno
-- nonno
--- babbo
---- figlio 1
---- figlio 2
--- mamma
-- nonna
... eccetera

vorrei che il tutto diventasse una lista di checkboxes, sempre mantenendo la struttura ad albero, con una chech a fianco di ogni elemento.

quello che vorrei è, che se clicco su babbo, mi vengano selezionati automaticamente anche nonno e bisnonno, ma che se ad esempio tolgo la spunta da bisnonno, questa venga tolta anche da tutti i suoi elementi figli.

la struttura è qualcosa di molto semplice, non ho nemmeno necessità di usare una lista UL per realizzarla, mi basta qualcosa tipo:

- [x] bisnonno
-- [x] nonno
--- [ ] babbo
---- [ ] figlio 1
---- [ ] figlio 2
--- [x] mamma

idee?