• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 413
  • Last Modified:

after changing the form action url using jquery display a different page for each action url

I am currently using jQuery to change the form action url that comes for the select box selected option. I am able to set the action url to the page I want to but after hitting the submit button it won't go to that page.

here is a test page I created on my test site.

http://dev.cotinthenet.com/ELIST.html

here is my mark for setting the action url. As you can see I even set up a alert to make sure its setting the action url but for some reason after hitting the submit button it won't go that page

what am I missing?

Thanks

<script type="text/javascript">
$(document).ready(function(){
 //Function to change Form Action
	$("#listid").change(function(){
		var selected = $(this).children(":selected").text();
		switch(selected){
		case "My Site - Local Customers":
		$("#mc-embedded-subscribe-form").attr('action','//dev.cotinthenet.com/Thanks.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=668339742e');
		alert("Form Action is Changed to '//dev.cotinthenet.com/Thanks.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=668339742e'\n Press Subscribe to Confirm");
		break;		
		case "My Site - Internet Customers":
		$("#mc-embedded-subscribe-form").attr('action','//dev.cotinthenet.com/Thanks1.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=3f8006144b');
	    alert("Form Action is Changed to '//dev.cotinthenet.com/Thanks1.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=3f8006144b'\n Press Subscribe to Confirm");
		break;		
		case "My Site - Tourists":
		$("#mc-embedded-subscribe-form").attr('action','//dev.cotinthenet.com/Thanks2.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=ac67cc21c4');
		alert("Form Action is Changed to '//dev.cotinthenet.com/Thanks2.html?u=c6e41e6e28b15275e4f53f9b1&amp;id=ac67cc21c4'\n Press Subscribe to Confirm");
		break;		
		default:
		$("#mc-embedded-subscribe-form").attr('action','#');
		
	}		
	});
	
	});
</script>

Open in new window

0
niceoneishere
Asked:
niceoneishere
  • 4
  • 4
  • 2
1 Solution
 
COBOLdinosaurCommented:
The alert is worthless for diagnostics. you are just setting it with a hard coded value.  You have to alert the contents of the action property of the form.  

Cd&
0
 
niceoneishereAuthor Commented:
Thanks for replying and Yes I know the alert is for debugging. Yes I want to set the hard coded values. Its works for what i am trying to achieve. I just need to know why its not taking to the page after hitting the submit button

Appreciate it
0
 
Jan LouwerensSoftware EngineerCommented:
As CD& said, change your alerts to
alert("Form Action is Changed to '" + $("#mc-embedded-subscribe-form").attr('action') + "'\n Press Subscribe to Confirm");

Open in new window


But it seems this page is working. The problem could lie in the page that you're submitting to. What are those pages doing? What status code are they returning?
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
COBOLdinosaurCommented:
Jan,

It has been a long time since we shared a thread.  I hope you are well.

Cd&
0
 
Jan LouwerensSoftware EngineerCommented:
<off_topic>
All is good with me. I have a 15 month old baby at home now, so that's the biggest thing going on for me now. The rest is pretty much same-o.
</off_topic>
0
 
niceoneishereAuthor Commented:
Ok I think I am not explaining myself correctly I am not interested in what's displaying in the alert boxes. I will be removing them. They are there just for debug purpose only. What I am looking for is when an option is selected, get its corresponding url from the case in the script and add that to the form action and display that page.

Whats currently being done is

1) adds the correct url to the form action but its not going to that page.

I am trying to achieve that I need it to go the page after hitting the submit button
Thanks again
0
 
Jan LouwerensSoftware EngineerCommented:
I was trying to suggest that perhaps it is actually going to the next page, but that the next page is not returning as you expect. Is there a way, on your server, that you can confirm that the resulting URL is actually being accessed? If so, what is the resulting status code of that page? (If the status code is not 200 and/or no content is being returned, then the page may simply not be redrawing after the form submit, since there is nothing to be drawn.)

As a test, in your form, try adding "http:" in front of your form action URLs. If that returns an error message, then you can see that the form is actually being submitted.
0
 
niceoneishereAuthor Commented:
yes the resulting page exists its a very simple page one line saying thanks for joining. here is the result page

http://dev.cotinthenet.com/Thanks.html?u=c6e41e6e28b15275e4f53f9b1&id=668339742e

and it does work with or without http

Thanks again
0
 
Jan LouwerensSoftware EngineerCommented:
It looks like this code is interfering with your form submit.
<script type='text/javascript' src='//s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js'></script><script type='text/javascript'>(function($) {window.fnames = new Array(); window.ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';}(jQuery));var $mcj = jQuery.noConflict(true);</script>

Open in new window


Try removing that part, verifying that your submit works, then debugging this script from there. (You should be able to view javascript errors in your browser's console.)
0
 
niceoneishereAuthor Commented:
Thanks
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: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

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.

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