Reference value within Form page (as opposed to Action page)

ColdFusion 5.0

<td bgcolor="eeeeee"> <cfselect size="1" name="PayMethod">
                <option selected value="Invoice">Renewal</option>
                <option value="Credit Card">Credit Card</option>
              </cfselect> </td>

I wish to reference the value within the current page so as to determine what other code to display.  All of my research on the net results in FORM.#paymethod# but I need the value before it is passed to the Action page.

thx!
neiljstandleyAsked:
Who is Participating?
 
black0psConnect With a Mentor Commented:
I need to back up a second. I reread your question and i think I know what you mean. What you actually want is Javascript or client-side code, not server-side.

<script language="JavaScript">
<!--
function displayStuff(x) {      
      x = document.pay.PayMethod.options[x].value;
      if (x == "Invoice") {
            document.getElementById('invoice').style.display = "block";
            document.getElementById('card').style.display = "none";
      }
      else if (x == "Credit Card") {
            document.getElementById('invoice').style.display = "none";
            document.getElementById('card').style.display = "block";
      }
}
//-->
</script>
<form name="pay">
<select size="1" name="PayMethod" onChange="displayStuff(this.options.selectedIndex)">
<option value="Invoice">Renewal</option>
<option value="Credit Card">Credit Card</option>
</select>

<div id="invoice">Invoice code</div>
<div id="card" style="display:none;">Credit Card code</div>
</form>
0
 
black0psCommented:
#Evaluate("Form." & paymethod)#
0
 
neiljstandleyAuthor Commented:
<td bgcolor="eeeeee"> <cfselect size="1" name="PayMethod">
                <option selected value="Invoice">Renewal</option>
                <option value="Credit Card">Credit Card</option>
              </cfselect> </td>
          </tr>
<cfif #Evaluate("Form." & paymethod)# is "Credit Card">

runtime:
Error resolving parameter PAYMETHOD

ColdFusion was unable to determine the value of the parameter. This problem is very likely due to the fact that either:

You have misspelled the parameter name, or
You have not specified a QUERY attribute for a CFOUTPUT, CFMAIL, or CFTABLE tag.
-----------------------------------------------
Paymethod is the correct name, the action page inserts data to the DB w/the same name.  
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
mrichmonCommented:
Really all you need is

Form.Paymethod

<cfif Form.Paymethod EQ "Credit Card">
...
</cfif>

But that is after the form is submitted.

If you want the value before the form is submitted you need javascript.

if(document.yourformname.paymethod.value == "Credit Card")
{
alert("You selected credit card!");
}
0
 
neiljstandleyAuthor Commented:
going to give these a try tomorrow, thx for the tips.
0
 
neiljstandleyAuthor Commented:
thx, that worked great for me.  guess it's time i start looking into javascript!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.