I crete an example, but what I should do is similar. See atteched file.
Q2 -> I show only the previous components choosen, showing the name if it was written in the comment (this is the only thing I was succesfull by myself). For each one (3° request: how can I validate if for every row of visible components a role was choosen.. so at least one check for every visible row) the user must choose a role.
Some roles are mandatory: every family must have an head of household, but it should be possible that nobody works and bring money (4° request: how can I make mandatory some columns? So a column can have 0 chcked answer, others must have at least 1 answer. All can have more than 1 answer)
(5° request: how can I disable some checkbox?) For example animals cannot work and bring money, so I would like to disable the corrisponding checkbox so that the user cannot click on it.
#question' + qID + ' table.question tbody tr';
$( arrayRow + ':eq(' + i + ') input.radio:checked' ).length