Hi lat9,
In preparation for migrating my changes to OPC, I checked the original Zen Cart and found I had forgotten something.
The checkout_{payment,billing}_address module does not do the work itself, it calls the tpl_modules_checkout_new_address.php template, which has my modifications in it, and where the onChange jscript is called from. I'm attaching that file here.
Since that is a common file (i.e., common to both modules) it made it easy to manage changes (only one template file for any new address changes in ZC).
To be honest, I haven't managed to follow how you do this in OPC, in includes/modules/pages/checkout_one/header_php.php I presume, but it does not look you are calling the generic tpl_modules_checkout_new_address Zen Cart template (unlike like what happens for create_account, for example). Is all the work happening via javascript there?
I wonder if it might be easier in the long run to use the Zen Cart template here, so people could take advantage of whatever standard Zen Cart version upgrades or personal customizations (even if it is only the order of fields, for example) more seamlessly? Perhaps that this might not be viable, with the way the OPC page opens up up a section to enter the address, but I will ask anyway.
Zen Cart 1.5.6c modified for Japanese language support. Upgraded incrementally from initial 1.5.5d. Currently planning direct upgrade to 2.1.0