Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 663
  • Last Modified:

Submit my form

Hi,

for some reason my form is not getting submitted.  

I can't get it to submit my form.

I have an image that calls Jquery and submit the form.

This is my code:

function SubmitFormSearch()
{
	$("#Submitted").val(1);
	$( ".ShowHideAdd" ).show();
	$("#SearchForm").attr("action","index.cfm");
	$('form#SearchForm').submit();
}

<cfif IsDefined('FORM.SearchForm')>
<cfdump var="#FORM.Status#">
<cfabort>
</cfif>


<FORM id="SearchForm" METHOD="POST" name="SearchForm" ACTION="<cfoutput>#ActionURL#</cfoutput>"> 

 <SELECT name="selectStatus" id="selectStatus">
           <cfoutput query="QStatus">
			<cfif (isdefined('FORM.Submitted') and (#FORM.selectStatus# eq #QStatus.StatusID#))>
			<option value="#QStatus.StatusID#" selected="selected">#QStatus.Status#</option>
			<cfelse>
			<option value="#QStatus.StatusID#">#QStatus.Status#</option>
             </cfif>
			 </cfoutput>
            </SELECT>


    <img src="images/SearchtextBoxbtn.png" onClick="SubmitFormSearch()" style="margin-bottom:35px;cursor: pointer;"/>

</FORM>

Open in new window

0
lulu50
Asked:
lulu50
1 Solution
 
Big MontySenior Web Developer / CEO of ExchangeTree.org Commented:
getting any errors in your console?
0
 
lulu50Author Commented:
no no errors but it's not executing this code

<cfif IsDefined('FORM.SearchForm')>
<cfdump var="#FORM.Status#">
<cfabort>
</cfif>

Open in new window

0
 
lulu50Author Commented:
if I do isdefined form.selectStatus it works fine
it gives me the value of the selectStatus


<cfif IsDefined('FORM.selectStatus')>
sdddddddd
<cfdump var="#form.selectStatus#">
</cfif>

Open in new window


but if I do isdefined form.searchform it doesn't work.
so, I am thinking why isn't recognizing my form name


<cfif IsDefined('FORM.SearchForm')>
<cfdump var="#FORM.selectStatus#">
<cfabort>
</cfif> 

Open in new window

0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

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.

 
Chris StanyonCommented:
It stands to reason that if:

FORM.selectStatus

is looking for an element called selectStatus inside of the Form

then this;

FORM.SearchForm

Is looking for an element called SearchForm inside the form

You see the problem here?
0
 
lulu50Author Commented:
Chris,

I know the difference.

Here is my question:

why I can't get the value of the FORM.selectStatus  if I say

<cfif StructKeyExists(Form,'SearchForm')>
or
<cfif isdefined("form.SearchForm")>

but when I say (this it takes me straight to my field value without validate the form submission)
<cfif isdefined("form.selectStatus ")>
it works fine and display my value

so, if I have a value in the form.selectstatus that means the form has been submitted and
if the form has been submitted why my Isdefined("form.SearchForm") will not work.
0
 
gdemariaCommented:
When you submit a form, a structure key will be created for each input/select/checkbox, etc inside of that form.     "SearchForm" is not the name of one of the input tags within that form.    SearchForm is the name of the form, I do not believe that submitting a form creates a form key for the name of the form, what value would it have?

You can test this by putting this at the top of your page and submitting..

<cfdump var="#FORM#">

This will show you all the input values created on your form submit, I don't think you will see the name of the form among the values.

I think it would be perfectly Ok to test for the select tag name (the thing that works for you).

What I usually do is to test for the button or submit input tag...

<input type="Submit" name="doSave" value="SAve It " >

In this case, I would test for IsDefined("Form.DoSAVe")

Since you are doing an image, you can use type="button" and test for  Form.doSave.x  

Again, you can using <cfdump var="#form#"> to see what values are created when you submit
0
 
Chris StanyonCommented:
Hey lulu,

I don't know ColdFusion specifically so I'm working off of common sense here, and the way that HTML works in general. The reason this works:

form.selectStatus

is because you have an element named selectStatus  within the form

The reason this doesn't work:

form.SearchForm

is because there is no element named SearchForm within the form - it is the form's ID, so never gets passed back to the server - ever!!

In your jQuery, you seem to be setting the value of #Submitted to 1, but there is no element with that ID in your form. You need to create it, and also give it a name. Then you check that to see if you form has been submitted:

<input type="hidden" id="Submitted" name="Submitted">

Open in new window

0
 
lulu50Author Commented:
Chris - I do have an element called Submitted in my form but I did not included in my code above because that wasn't my issue.


gdemaria - your explanation tells my why I can't do it.
0
 
lulu50Author Commented:
Thank you
0
 
Chris StanyonCommented:
I already explained that SearchForm didn't exist in the form to which you replied:

I know the difference.

Clearly you didn't
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.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now