在用户提交表单后重定向

时间:2014-07-16 18:48:14

标签: javascript html5

我试图创建一个基本表单,将用户重定向到我们提交回复后选择的任何给定网页。虽然action元素位于我无法操作的站点上。

我将如何做到这一点?

<form method="POST" action="https://docs.google.com/forms/d/1dAp52ALtiu8tEt8UY-Rs7WcKn36pI1vBItmGl0sV0Ik/formResponse">
<input type="text" name="entry.139518212" value="">
<input type="submit" name="submit" value="Submit">
</form>

2 个答案:

答案 0 :(得分:0)

试试这个。您需要使用jQuery才能工作。

<script type="text/javascript">
    $(function() {
      $('form').submit(function(){
        $.post('https://docs.google.com/forms/d/1dAp52ALtiu8tEt8UY-Rs7WcKn36pI1vBItmGl0sV0Ik/formResponse', function() {
          window.location = 'http://www.whereveryouwanttogo.com';
        });
        return false;
      });
    });
</script>

来自HTML Form Redirect

答案 1 :(得分:0)

Ajax可能对您有所帮助。您可以通过Ajax提交表单,获得响应并做任何您想做的事情。 你必须创建一个ajax函数并在点击事件上调用它

<input id="text" type="text" name="entry.139518212" value="">
<input type="submit" name="submit" value="Submit" onclick="sendData();">

然后创建一个js函数:

function sendData(){
///getting text from input
text=document.getElementById('text').value;
var xmlhttp;
///browser compatibility
if (window.XMLHttpRequest){
    xmlhttp=new XMLHttpRequest();
}else{
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
    ///if response was retrieved and no errors occured
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      ///you can access the response
      ///put your redirection code here
    }
}
xmlhttp.open("POST","https://docs.google.com/forms/d/1dAp52ALtiu8tEt8UY-Rs7WcKn36pI1vBItmGl0sV0Ik/formResponse",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("entry.139518212="+text);
}