На веб-сайте недвижимости Я работаю над созданием формы «Связаться с нами» на странице «Сведения о недвижимости», где пользователь может нажать кнопку «Связаться с нами», которая загрузит форму в модальный диалог, iframe, загружающий форму контакта, заполните некоторые детали и отправьте их.Хром тихо повторяет форму в iframe на кнопке браузера
После того, как форма обработана на стороне сервера, я должен испустить код JavaScript с сервера, который вызывает метод закрытия диалогового окна, а затем перенаправляет пользователя на страницу благодарности (если бы я сделал простую переадресацию на сервере, iframe получите страницу благодарности, которую я не хочу).
Проблема в Chrome, где, если вы нажмете кнопку «Назад» браузера, контактная форма будет спокойно повторно отправлена.
Примечание: IE и Firefox не имеют этой проблемы вообще.
Я нашел следующие ссылки полезны, но не ответ на мою проблему:
- https://productforums.google.com/forum/#!topic/chrome/J1KMARIIHW4
- https://code.google.com/p/chromium/issues/detail?id=263508 (это, кажется, очень близко к поведению я вижу - но это походит на ошибка, которая постоянно всплыли в течение последних нескольких лет)
- Chrome executing all JS again on browser back button
Мы пытались вар чтобы избежать обхода проблемы в Chrome, как скрытые поля, застрахованный кеш отключен, уничтожить iframe перед перенаправлением на страницу благодарности. Ничто не возобновляет повторную отправку формы, даже не спрашивая, хотите ли вы повторно отправить ее (не нужно ее повторно отправлять).
Если это ошибка браузера, вы ничего не можете поделать, чтобы исправить эту проблему. Мое предложение состояло бы в том, чтобы использовать архитектуру одностраничного приложения даже для этого небольшого раздела, поэтому нет кнопки возврата или, по крайней мере, не перегружает родительский документ. – Alex
Вы контролируете Iframe, где у вас есть контакт с нами? Или это внешнее? – SilentTremor
@SilentTremor это наша форма, поэтому мы имеем полный контроль. Почему ты думаешь? – Jacques