Firefox пересылает в iframe при обновлении страницы - PullRequest
1 голос
/ 22 февраля 2011

Я отправляю в iframe. В Firefox, если пользователь обновляет страницу после POST, браузер пытается снова выполнить POST (что приводит к появлению повторного подтверждения).

Это происходит только в Firefox (я тестировал Chrome, Safari, IE8 и 7).

Я пытался удалить iframe при выгрузке и всегда создавать заново каждый раз, когда загружается страница (используя уникальный идентификатор / имя). Но Firefox сохраняется в POSTing.

У кого-нибудь есть подсказка?

Ответы [ 2 ]

1 голос
/ 01 июня 2011

У меня была та же проблема, и я обнаружил, что Firefox загружает удаленное местоположение iframe в следующем iframe, я поместил его как последний iframe в теле, чтобы после него не было iframe!

Задайте имя для своих iframe и вызовитеЭтот метод используется при загрузке тела для проверки местоположения вашего 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).

1 голос
/ 24 февраля 2011

Когда вы обновляете, Firefox пытается обновить текущую страницу во всех фреймах, вместо того, чтобы устанавливать их обратно на исходные страницы.

После публикации во фрейме вы не можете загрузить другой документ во фрейм, тем самым заменив опубликованный документ? Или, может быть, создать фрейм только тогда, когда вам нужно опубликовать его.

...