Как заставить функцию работать только при первой загрузке тела? - PullRequest
2 голосов
/ 18 ноября 2010

У меня есть сайт объявлений, и когда пользователи впервые заходят на сайт, на событие загрузки тела отправляется форма:

Форма отправляется и отображает ее результаты в iframe на той же странице.

Проблема в том, что я не хочу, чтобы функция submit_form () вызывалась каждый раз, когда пользователь нажимает назад или вперед в браузере, так как я могу запретить браузеру отправлять ее при использовании кнопок назад / вперед?

Пример:

Форма отправляется при входе пользователя на сайт.
Форма показывает результаты поиска в iframe
Пользователь щелкает один из результатов, и отображается новая страница
Пользователь нажимает кнопку «Назад», чтобы снова перейти к результатам поиска
Пользователь обнаружил, что форма была отправлена ​​повторно из-за триггеров загрузки тела

Как мне решить эту проблему?

Спасибо

Ответы [ 2 ]

4 голосов
/ 18 ноября 2010

Решение только на стороне клиента: установите cookie .

0 голосов
/ 18 ноября 2010

вы пометили этот вопрос php, поэтому я думаю, что лучше использовать сеанс на стороне сервера

  • начать сеанс, инициировать сеанс varto 0

Форма отправляется при входе пользователяsite.

  • если сессия var == 0, тогда показать результаты

Форма показывает результаты поиска в iframe

  • установить сессию var на 1

Пользователь щелкает один из результатов, и отображается новая страница. Пользователь нажимает кнопку "Назад", чтобы снова перейти к результатам поиска

  • этого не происходит:

Пользователь обнаруживает, что форма была отправлена ​​повторно из-за триггеров загрузки тела

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...