フォームの入力が正常に完了した後、ユーザーをお礼のページにリダイレクトする際に問題が発生しています。フォームが送信されると、空白のページに移動します( https://cunet.sparkroom.com/Sparkroom/postLead )...ありがとうページにリダイレクトする必要がありますフォームの詳細を「フォームアクション」のURLに送信します。
HTMLコード:
<form action="https://cunet.sparkroom.com/Sparkroom/postLead/" method="post" name="theForm"
id="theForm" onSubmit="return MM_validateForm();" >
...
</form>
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>
誰かが私が間違っていることを知っていますか?データをURLに送信し、ユーザーを「ありがとう」ページにリダイレクトした後、フォームが必要です。
成功のコールバック構文が正しくありません。むしろ:
$('#theForm').ajaxForm(function() {
window.location.href = "/path/to/thankyoupage";
});
また、window.location.href
とlocation.window.href
//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>
これはjQUeryソリューションです。
window.location("www.example.com");
あなたはこのように試すことができます:
success: function (data) {
window.location.href = data.redirecturl;
},
error: function () {
alert('error happened');
}
OPのまったく異なるコンテキストで、次のコードが機能しました。
$(document).ready(function() {
window.location.href = "URL";
});
あなたが使用する必要があります
window.location.href = "http://www.google.com";
ではなく
location.window.href = "http://www.google.com";
http://www.w3schools.com/js/js_window_location.asp
成功は、引数として$ .ajaxFormに渡された関数である必要があります。
$('#theForm').ajaxForm(function() {
window.location.href = "redirect user to the thank you page";
});