表单提交后的Javascript重定向

时间:2014-03-19 17:45:19

标签: javascript html forms

我是JavaScript的新手,我正试图找到一种方法,而不是在用户点击我的表单的“提交”按钮时显示“谢谢”div,转到HTML页面我的选择,即www.site.com/thanks.html。我发现了一些不同的方法,但是还没有能够成功实现这种特定形式的任何内容,需要一些帮助。

以下是表单HTML:

<div class="row">
<div class="span12">
    <div id="success"></div>
</div>

<div class="span6">
    <div class="control-group controls-row">
        <input class="inputbox span3" type="text" id="rp_name" name="rp_name" placeholder="Name" value="" />
        <input class="inputbox span3" type="text" placeholder="Email" name="rp_email" id="rp_email" value="" />
    </div><!-- end control group -->

    <div class="control-group">
        <input class="inputbox span6" type="text" name="rp_subject" placeholder="Subject" id="rp_subject" value="" />
    </div><!-- end control group -->

    <div class="control-group">
        <input class="btn" id="submit-form" type="submit" name="submit" value="Send Message" />
    </div><!-- end control group -->
</div>

<div class="span6">
    <div class="control-group">
        <textarea class="textarea span6" placeholder="Available Days" name="rp_message" id="rp_message">
        </textarea>
    </div><!-- end control group -->
</div>

以下是从“

”中提取“成功消息”js的地方
$.ajax({
     type: 'POST',
     url: 'php_helpers/contact_form.php',
     data: data_html,
     success: function(msg){

     if (msg == 'sent'){
         success.html('<div class="alert alert-success">Message <strong>successfully</strong> sent!</div>')  ;
           $('#rp_name').val('');
         $('#rp_email').val('');
         $('#rp_message').val('');
        }else{
           success.html('<div class="alert alert-error">Message <strong>not</strong> sent! Please Try Again!</div>')  ; 
        }
     }
});

所以我需要用重定向换掉“div class =”alert alert-success“”区域。希望这是一个简单的解决方法!

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

我认为你可以使用window.location来做这件事。

e.g:

window.location = '/success_page';

答案 1 :(得分:1)

因此,您可以操纵window.location进行重定向。

window.location.replace("http://yoursite.com/thankyou.html");
if (msg == 'sent'){
    window.location.replace("http://yoursite.com/thankyou.html");
    $('#rp_name').val('');
    $('#rp_email').val('');
    $('#rp_message').val('');
}else{
    window.location.replace("http://yoursite.com/wrong_information.html");
}

答案 2 :(得分:0)

你绝对可以改变页面的位置。 在javascript中有一个设施。

window.location = "YOUR PATH HERE";