<cfoutput>
<form name="DropDown"
method="post">
<!--- query DB for the first drop down list --->
<cfquery name="get_Main_Group"
datasource="ds">
SELECT group_id, group_name
FROM tblGroups
</cfquery>
<!--- first drop down
list --->
<!--- NOTICE the onChange javascript event in the select tag, this is
what submits the form after the first selection --->
<select name="select_Main_Group"
required="yes"
onchange="this.form.submit()">
<option>Select Main Group</option>
<!--- dynamically populate the
first drop down list based on the get_Main_Group query --->
<!--- NOTICE the CFIF within the option tag, this says,
if the first selection has been made, display the chosen option when the page
reloads --->
<cfloop query="get_Main_Group">
<option
value="#group_id#" <cfif isDefined('form.select_Main_Group')><cfif
form.select_Main_Group eq "#group_id#">selected</cfif></cfif>>#group_name#</option>
</cfloop>
</select>
<p>
<!--- if the first selection has
been made, display the second drop down list with the appropriate results --->
<cfif isDefined('page.select_Main_Group')>
<!--- query DB for second drop down list,
based on the selected item from the first list --->
<cfquery name="get_Sub_Group"
datasource="ds">
SELECT group_id, subgroup_id,
subgroup_name
FROM tblGroups
WHERE group_id = #page.select_Main_Group#
</cfquery>
<!--- second drop
down list --->
<select name="select_Sub_Group"
required="yes">
<option>Select Subgroup</option>
<!--- dynamically
populate the second drop down list based on the get_Sub_Group query --->
<cfloop query="get_Sub_Group">
<option
value="#subgroup_id#">#subgroup_name#</option>
</cfloop>
</select>
</cfif>
</form>
</cfoutput>
<!--- THAT'S ALL THERE IS TO IT! --->
For other useful info, check out: