Comment rediriger l'utilisateur vers une autre page après la soumission du formulaire Ajax

J'ai des problèmes pour rediriger l'utilisateur vers une page de remerciement après une fin de formulaire réussie. Ce qui se passe, c'est qu'après la présentation du formulaire, il passe sur une page vierge ( https://cunet.sparkroom.com/Sparkroom/postLead ) … J'ai besoin de la rediriger vers une page de remerciement tout en soumettant les détails du formulaire au URL dans la «forme d'action».

Code HTML:

<form action="https://cunet.sparkroom.com/Sparkroom/postLead/" method="post" name="theForm" id="theForm" onSubmit="return MM_validateForm();" > ... </form> 

Code Ajax:

 <script src="http://malsup.github.com/jquery.form.js"></script> <script> $(document).ready(function() { $('#theForm').ajaxForm(function() { alert('form was submitted'); }); success:function(response) { location.window.href = "redirect user to the thank you page"; } }); </script> 

JavaScript:

 function MM_validateForm() { if ( !jQuery('#theForm #FirstName').val() ) { alert('Please input your first name.'); jQuery('#theForm #FirstName').focus(); return false; } if ( !jQuery('#theForm #LastName').val() ) { alert('Please input your last name.'); jQuery('#theForm #LastName').focus(); return false; } if ( !jQuery('#theForm #daytimephone').val() ) { alert('Please input your phone number.'); jQuery('#theForm #daytimephone').focus(); return false; } if ( !jQuery('#theForm #Email').val() ) { alert('Please input your email.'); jQuery('#theForm #Email').focus(); return false; } if ( !jQuery('#theForm #BID').val() ) { alert('Please select your preferred campus.'); jQuery('#theForm #BID').focus(); return false; } if ( !jQuery('#theForm #programs').val() ) { alert('Please select your preferred program.'); jQuery('#theForm #programs').focus(); return false; } if ( !jQuery('#theForm #How_Heard').val() ) { alert('Please select how you heard about us.'); jQuery('#theForm #How_Heard').focus(); return false; } return true; } // ]]></script> 

Est-ce que quelqu'un sait ce que je fais mal? J'ai besoin du formulaire pour soumettre les données à l'URL, puis après la redirection de l'utilisateur vers une page "merci"

Votre syntaxe de rappel de succès est incorrecte. Il devrait plutôt être:

 $('#theForm').ajaxForm(function() { window.location.href = "/path/to/thankyoupage"; }); 

Aussi, notez que c'est window.location.href et not location.window.href

Tu devrais utiliser

 window.location.href = "http://www.google.com"; 

et pas

 location.window.href = "http://www.google.com"; 

http://www.w3schools.com/js/js_window_location.asp

Le succès devrait être une fonction passée comme argument à $ .ajaxForm:

 $('#theForm').ajaxForm(function() { window.location.href = "redirect user to the thank you page"; }); 

Devrait être

 window.location = "http://www.google.com"; 

C'est une solution jQUery:

 window.location("www.example.com"); 
 //Please try this <script src="http://malsup.github.com/jquery.form.js"></script> <script> $(document).ready(function() { $('#theForm').ajaxForm(function() { alert('form was submitted'); }); success:function(response) { if(response){ // check whether response is received location.window.href = "http://your_domain_name/thank-you";} } }); </script>