点击HTML锚标记提交表单并重定向到href链接

HTML anchor tag onclick to Submit form and Redirect to href link

本文关键字:重定向 href 链接 表单 提交 HTML 点击      更新时间:2023-09-26

我正在尝试提交表单并重定向到锚标记href属性中指定的href url。

形式:

<form id="myform" method="POST">
    <a href='http://www.google.com' onclick='submitResponse()'>SUBMIT</a>
</form>
JavaScript:

function submitResponse() {
    document.forms[0].submit(); 
}

但是它只重定向到链接,表单没有被提交。

我也试过这个,也不工作。

<form id="myform" method="POST">
    <a href='#' onclick='submitResponse()'>SUBMIT</a>
</form>
function submitResponse() {
    window.location.href = "http://www.google.com" ;
    document.forms[0].submit(); 
}

你必须阅读html表单。使用action属性

为表单添加操作
 <form action="http://google.com" method="POST">

你的代码是这样的

<form id="myform" method="POST">
    <a href='#' onclick='submitResponse()'>SUBMIT</a>
</form>
function submitResponse() {
    document.forms[0].action = "http://www.google.com" ;
    document.forms[0].submit(); 
}

阅读这里的表单:

形式

你的问题的解决方案:

<form action="http://google.com" method="POST">

当你执行表单提交时,如果你没有在动作中指定url地址,页面会简单地重新加载。

你被重定向的唯一原因是:

 window.location.href = "http://www.google.com" ;
编辑:

考虑一下:

function submitResponse() {
    $('form').submit(function(){
        $.post('http://google.com', function() {
          window.location = 'http://google.com';
        });
      });
}

表单被提交,并且在成功函数中重定向到所需的站点。

你的代码不工作的原因是,因为重定向不等待表单提交,它直接定向。

只需更新表单标签的action属性:

var submitResponse = function(url) {
  var form = document.getElementById('myform');
  form.action = url;
  form.submit();
};
<form id="myform" method="POST">
  <a href='http://www.google.com' onclick='submitResponse(this.href);return false;'>SUBMIT</a>
</form>

如果您要提交到一个URL,您可以简单地返回HTTP响应,如下所示。

HTTP/1.1 302 Found
Location: http://www.google.com

引用:

http://www.w3schools.com/tags/ref_httpmessages.asp 
https://en.wikipedia.org/wiki/HTTP_302

如果使用

ASP。净MVC

http://www.dotnet-tricks.com/Tutorial/mvc/4XDc110313-return-View()-vs-return-RedirectToAction()-vs-return-Redirect()-vs-return-RedirectToRoute().html
http://stackoverflow.com/questions/7892094/mvc-redirect-to-index-from-another-controller
PHP

http://stackoverflow.com/questions/768431/how-to-make-a-redirect-in-php

JAVA

http://stackoverflow.com/questions/2659000/java-how-to-find-the-redirected-url-of-a-url
http://stackoverflow.com/questions/15057329/how-to-get-redirected-url-and-content-using-httpurlconnection