OK, I am changing this from a "How do I make this work" to a "Wouldn't it be smarter if it worked like this"
My suggestion is this: Variables set in the on_refresh block should be automatically assigned to elements of the same name - similar to how on_request works.
I am trying to get this working by frankenstein programming - but I don't really understand ad_form (or the form builder) well enough to know if I am breaking things.