Not exactly. A form's action attribute tells it where to issue a request, but it does not request anything. Just like the method attribute tells it wether to issue a post or get request, but does not do either. form.submit() on the other hand, submits the form, which in your case means that a post request is sent to your.server/currently/used/directory/setvisibility.php?action=add_cr_card.
You sit down at a table in a restaurant and
1. order a sallad (page request)
2. you get your food (page request complete)
3. included with the sallad is a little robot that can salt your food and push food stuffs around to make patterns (javascript)
4. you eat a little and food gets salted and pushed around (user activity + javascript)
5. you tell your robot to hide some tomatoes (hide a form)
6. and at the same time you tell the waiter to bring a steak (new page request), which means that he takes away your salad, and since the robot belongs with the salad, it goes away as well. Besides, the robot would have no tomatoes to hide anyway.
7. The steak, which also comes with a robot that can salt, is served.
8. etc.
If you just want to hide stuff on the current page, use javascript to do so.
If you want stuff to be invisible on a new page from the start (possibly depending on certain conditions; e.g. user settings), create appropriate html markup with your php code.
Always remember that one page is completely separate from any other page.
Your server, on the other hand, can keep track of a specific user with sessions. One page can also send data to the next one, through post or get data.