繁体   English   中英

如何在表单提交时重定向页面

[英]How to redirect page on form submission

我有一个要提交的表格。 完成后,将页面重定向到另一个页面。 但是目前它不适用于我。

<form name="myname" method="post" action="actionurl" onsubmit="gotonext()">

function gotonext(){
            var portalpath = window.location.pathname;                              
            var myredirect =  portalpath +"?uP_fname=msu/survey&amp;command=display&amp;sid=162";
            alert(myredirect);
            window.location.href = myredirect;
        } 

因此,警报会显示我要访问的正确URL。 表单将数据提交到正确的actionurl。 无效的是重定向。

关于我可能要去哪里的任何想法?

好吧,这有点复杂。 问题是提交表单时,客户端基本上已经开始通过表单的action属性中指定的URL开始处理新请求。

一种常见的解决方法是使用AJAX提交表单,然后在该AJAX请求的回调中触发重定向。 这比较容易,但是有明显的局限性:AJAX请求不会跨域。

另一种方法(可能对您有用)是以下方法:

  • 使用表单在页面上创建隐藏的iframe。
  • 将表单的target属性设置为该iframe的名称
  • 在此iframe上设置onload事件处理程序,并在此处理程序中触发重定向。

是概念证明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM