This example demonstrates a form which dynamically creates various sections based on the configuration in the form. It deliberately allows graceful degradation to a non-javascript environment. In a javascript environment, the "Choose" button next to the select control if displayed; in a non-js environment it is hidden by the module CSS.

The basic idea here is that the form is built up based on the selection in the question_type_select field, and it is built the same whether we are in a javascript/AJAX environment or not.

Try the AJAX version and the simulated-non-AJAX version.