Я протоколирование, как долго кто-то пребывает в определенной Jsp-страницы, так что я три функции называются в моем теле тега:Когда страница влево/выгружен
<body onunload="pageLeft();" onload="pageEnter(); startInterval();">
pageEnter
посылает ajax- запрос на сервер, который содержит идентификатор страницы и «1» для ввода страницы.
startInterval
начинает интервал и отправляет каждые несколько секунд ajax-запрос на сервер, который содержит «2» для того, чтобы оставаться там.
pageLeft
отправить '3' от ajax, так что я знаю, что пользователь покинул страницу.
Наиболее существенными являются «1» и «3», которые используются для группировки всех протокольных данных.
Существует также форма на странице, которая имеет кнопку Submit-:
<form action="/UpdateDB/Customers.jsp" method="POST" name="Custpost">
Я был в пределах форм-данные будут переданы Customers.jsp
после текущей страницы выгружается и Customers.jsp
загруженным. Все мои испытания делают процедуры в Customers.jsp
работы не удалось, и теперь я понял, почему:
В базе данных только 1s и 2s, но не 3. Это означает, что текущая страница никогда не выгружается - пока процедура уже началась. ..
Я думал о том, чтобы вручную установить 3-entry в Customer.jsp, но это оставило бы две такие записи в базе данных. Кроме того, если пользователь просто покинет страницу, 3-х записей вообще не останется.
Что я должен делать?
Попробуйте с помощью 'onbeforeunload' метод и дайте мне знать, если он работает. –
К сожалению, никаких изменений вообще нет ... – Qohelet
Ну, как я вижу сейчас, это действительно ухудшилось ... теперь функция pageLeft не вызвана вообще – Qohelet