Do you receive an onboard credit for children 12 years and younger when you purchase dining in advance?
Yes that is correct, if you choose to purchase dining in advance and add everyone in your party, you will pay full price for everyone online. Then when you get on the ship, just make sure you talk with the waiter to let them know what is going on and they can put the difference between the cost back on your account as an onboard credit. Keep in mind that some restaurants have a kids menu and in the past, if your child ordered off the regular menu and not the children's menu they were charged the full cover charge. I do not know if this is still the case. (At 3 and 7, we do not take our children with us to specialty dining as it is not something they would enjoy.)
Your other option is to just pre-purchase online the reservation for the adults in your party, and then when you board the ship, just stop by the restaurant to let them know your correct party size. For some people this is a better option, but ultimately its what works best for your family.