在成功提交表单JS后想要重定向到URL

时间:2018-11-23 09:33:15

标签: javascript forms redirect

在成功提交JS表单后想重定向到URL。 这是我的代码。我有2种不同的形式,我需要将它们重定向到另一个URL。在成功提交表单JS后想要重定向到URL。 这是我的代码。我有2种不同的形式,我需要将它们重定向到另一个URL。在成功提交表单JS后想要重定向到URL。 这是我的代码。我有2种不同的形式,我需要将它们重定向到另一个URL。

$(document).ready(function() {
    $(function() {
        var form = $('#ajaxContact');
        var formMessages = $('#contactMessage');
        $(form).submit(function(e) {
            e.preventDefault();
            if (jQuery(".email", this).val() == '' && jQuery(".message", this).val() == '' && jQuery(".name", this).val() == '') {
                $(formMessages).text('Required fields must be filled');
                return false;
            }
            var formData = $(form).serialize();
            formData += '&subjects=New Contact Us Message&phone="None"&required=email,name,message';
            $.ajax({
                    type: 'POST',
                    url: $(form).attr('action'),
                    data: formData
                })
                .done(function(response) {
                    $(formMessages).removeClass('error');
                    $(formMessages).addClass('success');
                    // Set the message text.
                    $(formMessages).text(response);
                    jQuery(".email", this).val('');
                    jQuery(".name", this).val('');
                    jQuery(".message", this).val('');
                })
                .fail(function(data) {
                    // Make sure that the formMessages div has the 'error' class.
                    $(formMessages).removeClass('success');
                    $(formMessages).addClass('errors');
                    // Set the message text.
                    if (data.responseText !== '') {
                        $(formMessages).text(data.responseText);
                    } else {
                        $(formMessages).text('Oops! An error occured and your message could not be sent.');
                    }
                });
        });
    });
    $(function() {
        var form = $('#callMe');
        var formMessages = $('#callMeMessage');
        $(form).submit(function(e) {
            e.preventDefault();
            if (jQuery(".email", this).val() == '' && jQuery(".phone", this).val() == '') {
                $(formMessages).text('One of the filds must be filled');
                return false;
            }
            var formData = $(form).serialize();
            formData += '&name=Call Me Service&subjects=New "Call Me" request from Webzool site function&message=No Message&required=subjects,name';
            console.log(formData);
            $.ajax({
                    type: 'POST',
                    url: $(form).attr('action'),
                    data: formData
                })
                .done(function(response) {
                    $(formMessages).removeClass('error');
                    $(formMessages).addClass('success');
                    // Set the message text.
                    $(formMessages).text(response);
                    jQuery(".email", this).val('');
                    jQuery(".phone", this).val('');
                })
                .fail(function(data) {
                    // Make sure that the formMessages div has the 'error' class.
                    $(formMessages).removeClass('success');
                    $(formMessages).addClass('errors');
                    // Set the message text.
                    if (data.responseText !== '') {
                        $(formMessages).text(data.responseText);
                    } else {
                        $(formMessages).text('Oops! An error occured and your message could not be sent.');
                    }
                });
        });
    });

如果您能提供帮助,我将非常高兴。谢谢

3 个答案:

答案 0 :(得分:0)

在您的.done函数中,您可以添加:window.location.href = 'webURL';window.location.replace("http://stackoverflow.com");

这将确保仅在ajax调用成功后才进行重定向。

代码示例:

$.ajax({
  type: 'POST',
  url: $(form).attr('action'),
  data: formData
})
.done(function(response) {
  $(formMessages).removeClass('error');
  $(formMessages).addClass('success');
  // Set the message text.
  $(formMessages).text(response);
  jQuery(".email", this).val('');
  jQuery(".phone", this).val('');
  window.location.replace("http://stackoverflow.com");
})

答案 1 :(得分:0)

.done(function(response) {

      window.open('<Redirection url>','_self');

}

答案 2 :(得分:0)

获得成功的响应后,您可以使用以下行重定向到所需的位置。

window.location.href = "https://www.google.com/";// the URL where you want to redirect your user