自定义制作的Google表单会在提交时打开另一个标签

时间:2016-06-30 11:47:40

标签: javascript jquery forms google-docs google-docs-api

我制作了自定义Google表单并使用Google电子表格作为我的数据库。 但是,单击表单上的“提交”按钮时,同一页面将在新选项卡中打开 并且前一页文本框包含用户输入的数据。

自定义表单代码为:

function postContactToGoogle() {

    var name = $('#_name').val();

    var email = $('#_email').val();
    var message = $('#_message').val();

    validate();


        if(validate=true)
    {
        $.ajax({
            url: "https://docs.google.com/forms/d/1sKGYnZfwEC_3sQvsjjx57swxLxdHMHPBC89s5C72x5s/formResponse",
            data: { "entry.2005620554": name,
            "entry.1045781291": email, "entry.839337160": message },
            type: "POST",
            dataType: "xml",
            statusCode: {
                0: function () {
                  swal("Heyy there","Thank You for your feedback!","success");
                  $('#_name').val('');

                    $('#_email').val('');
                    $('#_message').val('');
                     window.setTimeout(function(){location.reload()},4000)

                },
                200: function () {
                    swal("Heyy there","Thank You for your feedback!","success");
                  $('#_name').val('');

                    $('#_email').val('');
                    $('#_message').val('');
                     window.setTimeout(function(){location.reload()},4000)

                }
            }
        });

    }

}

function validateEmail(email) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)
(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA
Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
function validate() {
var email = $('#_email').val();
if (validateEmail(email)) {


} else {
swal('Oops!','The email '+email+' is not valid','error');



return false;
}

}

JavaScript代码为:

{{1}}

1 个答案:

答案 0 :(得分:0)

我自己通过将表单的目标保存到隐藏的iframe并在同一页面上创建隐藏的iframe来解决上述问题。