Passing <cfselect> hard coded values into a session scope

282 views Asked by At

I have a cfform with multiple fields and I'm using an onpage post method to post information gathered from the user's entries into a session to pass onto each page of the registration process.

What I cannot figure out for the life of me and this is probably something simple is that if I have hard coded options for a how can I pass what is selected into the session? I can get a session.house.main.form.saletype is undefined error when trying to display the value selected on the next page. All my other form fields show up fine.

I removed all the other form fields to make it easier to check my code:

    <cfif not structKeyExists(session.house, "main")>
        <cfset session.house.main= {saletype="",
                                    name=""}>
    </cfif>

    <cfparam name="form.saletype" default="#session.house.main.saletype#">
    <cfparam name="form.name" default="#session.house.main.name#">

    <cfif structKeyExists(form, "submit")>
            <cfset session.house.main = {saletype=form.saletype,
                                         name=form.name}>
    <cflocation url="page2.cfm" addtoken="false" />
    </cfif>

    <cfform method="post">
    <cfselect name="saletype" size="1">
                        <option value="Lease" selected>Lease</option>
                        <option value="Rent Now">Rent Now</option>
                    </cfselect><br />
   <cfinput type="text" name="name" id="name" value="#form.name#" required="yes" message="Please enter your name"><br />
        <cfinput type="submit" name="submit" id="submit" value="Save"><br />
        </cfform>

Edit: Fixed cfselect name. How would I set the form.saletype into the cfselect with two hardcoded options?

0

There are 0 answers