Forms, usability, and the W3C DOM: A first-class article about one method of simplifying complex Web-based forms by making various elements appear and disappear based on other input. The solution he comes up with is quite ingenious.
It has a link to this page with demonstrates a solution to another frustrating aspect of interface design — how to handle one-to-many relationships. These are situations where one aspect of the form is the “parent” and you need to spawn n “child” input areas. I always end up coding two forms, one for the parent and one for the children. You add the parent, which provides a link to add children. I’m interested to try this guy’s method and see how it flies.