Thanks Alexander and Helmut! Wonder why didn't I thought of using display:none when I'm already using it in my CSJS code. Also when I search the web for 'XPages show component when checkbox is checked', all the answers are usually complicated ones involving getvalue() and partial refresh etc. I've read somewhere before that using styling/CSS to show/hide your component isn't really hiding in terms of security which would allow hacker access.
Also, in terms of mimicking real paper form, a checked checkbox will meant 'Yes' and if it's not checked it'll mean 'No' which explains why I'm not using any checkbox group or radio button group controls.
Anyway it works now. Thanks again.