1

如何让 iframe 保持其默认提交但在将用户重定向到另一个页面之后。我听说我需要在服务器端进行此重定向,但不知道这意味着什么。

以下是我尝试过的,但它取消了默认的 iframe 提交并只是重定向。

function convert() {
            document.location = '/sidingsuccess';
}

onSubmit="convert();"

在 iframe 代码上

4

3 回答 3

1

在服务器上,您可以在提交完成后,通过执行以下操作使用该header功能将页面重定向到另一个页面(例如example.php):

header('Location: example.php');

那是你要找的吗?

于 2012-09-19T19:39:09.180 回答
1

将表单提交到隐藏的 iframe。

iframe HTML:

<g:form controller="..." action="submit" method="POST" target="hidden-frame">
...
</g:form>

<iframe id="hidden-frame" style="display: none" onload="onSubmitCompleted"></iframe>

<script>
    function onSubmitCompleted() {
        window.top.location.href = <redirect url>
    }
</script>

控制器:

/*process submission */

render("<html><head><script>window.parent.onSubmitCompleted();</script></head><body></body></html>");
于 2012-09-19T19:46:30.470 回答
0

替换您的以下行:

document.location = '/sidingsuccess';

对于这个:

window.top.location.href = '/sidingsuccess';

应该这样做。

于 2012-09-19T19:47:07.840 回答