【问题标题】:Firefox re-posts to iframe on refresh of pageFirefox 在页面刷新时重新发布到 iframe
【发布时间】:2011-07-02 03:39:22
【问题描述】:

我正在发布到 iframe。在 Firefox 中,如果用户在 POST 之后刷新页面,浏览器会再次尝试 POST(导致出现重新发布确认)。

这只发生在 Firefox 中(我测试过 Chrome、Safari、IE8 和 7)。

我尝试在卸载时删除 iframe,并在每次页面加载时始终重新创建 iframe(使用唯一的 ID/名称)。但 Firefox 坚持 POST。

有人知道吗?

【问题讨论】:

    标签: firefox forms post iframe refresh


    【解决方案1】:

    我有同样的问题,我发现 Firefox 加载删除了下一个 iframe 中的 iframe 位置,我把它作为最后一个 iframe 放在正文中,这样后面就没有 iframe!

    为您的 iframe 设置名称并将此方法称为 body onload 以检查您的 iframe 位置:

    function debugframes() {
        if(confirm("Show " + window.frames.length + " iframes?")){
            for(var f = 0; f < window.frames.length; f++){
                alert(window.frames[f].name + "/" + window.frames[f].location);
            }
        }
    }
    

    我还在寻找更好的方法来解决这个问题,如果我找到了,我会发布。

    编辑:您也可以在重新加载页面之前执行document.getElementById("iframe-id").src = "";(不删除 iframe)。

    【讨论】:

      【解决方案2】:

      当您刷新时,Firefox 会尝试刷新所有框架中的当前页面,而不是将它们设置回原来的页面。

      一旦你发布到框架中,你能不能不将另一个文档加载到框架中,从而替换发布的文档?或者也许只在需要发布到框架时才创建框架。

      【讨论】:

        猜你喜欢
        • 2015-04-18
        • 2010-12-24
        • 2013-03-20
        • 2013-02-10
        • 1970-01-01
        • 1970-01-01
        • 2012-06-18
        • 1970-01-01
        • 2012-06-07
        相关资源
        最近更新 更多