Как удалить переменную сессии при закрытии всплывающего окна?
У меня есть всплывающее окно, в котором я сохраняю массив переменных в переменной сеанса, когда нажимаю кнопку закрытия (X в правом верхнем углу) или кнопку ввода cmd в форме, в которой я хочу удалить переменную сеанса, содержащую мой массив переменных. Как я могу это сделать?
Всплывающее окно в настоящее время закрыто JavaScript:
function cmdClose_onclick() {
self.close();
}
2 ответа
Переменные сеанса хранятся на сервере, поэтому вам нужно сообщить серверу, что что-то произошло на клиенте, и вызвать соответствующую функцию для удаления переменной сеанса.
Есть несколько способов сделать это.
Вы можете сделать запрос AJAX на страницу, метод страницы или пользовательский
HTTPHandler
, Если вы пишете собственный файл.ashx, вы можете просто сделать запрос на его URL и удалить его из переменной сеанса.Сделайте так, чтобы ваша страница делала постбэк при закрытии окна. Вы можете вручную вызвать обратные вызовы, позвонив
__doPostBack()
в JavaScript или просто нажав кнопку или отправить форму.
Я бы пошел с вариантом № 1, если вы можете.
Я бы посоветовал получить javascript для вызова AJAX WebMethod, который очищает переменную сеанса.