Many, many thanks. I drew stumps on and used the excellent Form plugin. After some tinkering around I got it to work. One warning though - having a submit button called "submit" caused all manner of problems - I kept getting an error 'form.submit() is not a function'. After poking around to make sure I was picking up the right form I couldn't understand why form.reset() didn't error out, but form.submit() did. Then a (rare) moment on inspiration - the submit button was called 'submit'. Changing that name and the clouds of confusion parted and the promised lands were revealed. Many thanks - i was tearing out what little hair I had left.
Ben