I have a problems with Hudson because my job needs two params for build the first specifies the environment and can be one of DEV, QA, PROD, and the second is a specific ser
A good plugin (requires you to have the UpdateSites Manager plugin and register the biouno update site) is the uno-choice plugin ( and friends).
The Uno-Choice Cascade Dynamic Parameter Plugin plugin allows for not only more than two levels of dependencies, but can generate dynamic content for the parameters which depend on previous input using either scriptler or inline groovy.
This is certainly much more capable than the previous answers.