Как удалить переменную сессии при закрытии всплывающего окна?

У меня есть всплывающее окно, в котором я сохраняю массив переменных в переменной сеанса, когда нажимаю кнопку закрытия (X в правом верхнем углу) или кнопку ввода cmd в форме, в которой я хочу удалить переменную сеанса, содержащую мой массив переменных. Как я могу это сделать?

Всплывающее окно в настоящее время закрыто JavaScript:

function cmdClose_onclick() {
    self.close();
}

2 ответа

Решение

Переменные сеанса хранятся на сервере, поэтому вам нужно сообщить серверу, что что-то произошло на клиенте, и вызвать соответствующую функцию для удаления переменной сеанса.

Есть несколько способов сделать это.

  1. Вы можете сделать запрос AJAX на страницу, метод страницы или пользовательскийHTTPHandler, Если вы пишете собственный файл.ashx, вы можете просто сделать запрос на его URL и удалить его из переменной сеанса.

  2. Сделайте так, чтобы ваша страница делала постбэк при закрытии окна. Вы можете вручную вызвать обратные вызовы, позвонив __doPostBack() в JavaScript или просто нажав кнопку или отправить форму.

Я бы пошел с вариантом № 1, если вы можете.

Я бы посоветовал получить javascript для вызова AJAX WebMethod, который очищает переменную сеанса.

Другие вопросы по тегам