Альтернативный способ Page.IsPostBack - PullRequest
2 голосов
/ 21 июня 2011

Я занимаюсь веб-программированием для iPhone, Android и Blackberry.Я столкнулся с проблемой, в которой мне нужно либо остановить обновление страницы (что, по словам блогов, невозможно), либо мне нужно просто обновить страницу, а не отправлять ее.

Я использовал базовые элементы управления HTML, а не серверные элементы управления ASP.Net, поэтому Page.IsPostBack нельзя использовать для различения обновления страницы и обратной передачи.

Альтернативы, которые я пробовал:

Корень проблемы в том, что: Используя Request.Form Collection, которые доступны только для чтения и обновляются только при обратной передаче.Итак, при обновлении страницы коллекция Request.Form имеет предыдущие значения и, таким образом, отправляется в соответствии с предыдущим запросом.

Я попытался использовать файлы cookie, как показано по этой ссылке: http://hi.baidu.com/cxyking/blog/item/508872346135283c5ab5f53c.html

Itможет обнаружить обновление страницы только после того, как она уже загружена.Хотя мое требование заключается в том, что мне нужно обнаружить обновление страницы до того, как исходная страница была выгружена.

Я попытался использовать OnBeforeUnload для отображения некоторого предупреждающего сообщения.Но это работает только в браузерах настольных компьютеров, и iOS, похоже, ничего не делает для этого события.

Есть ли какие-либо идеи о том, как я могу выполнить одно из следующих действий:

  • Полностьюостановка обновления страницы.
  • Отображение предупреждающего сообщения пользователю о том, что он не покидает страницу (OnBeforeUnload не работает на iOS)
  • Каким-то образом обновите коллекцию Request.Form (обратите внимание, что она имеет Set, но он естьтолько для чтения, так что не работает)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...