Я хочу отправить запрос ajax, когда пользователь покидает страницу или закрывает окно.
Вот мой код внутри:
<script type="text/javascript">
function sendajax(){
$.ajax({
url: "someurl",
data: mydata,
async : false
});
}
</script>
<script type="text/javascript">
window.onbeforeunload=function(){sendajax();};
</script>
Когда событие происходит, оно срабатывает дважды.
Почему это происходит?
Я знаю, что могу предотвратить это, добавив переменную var ajaxSent=true;
, но, может быть, есть более чистый способ сделать это?
UPD:
Я заменил содержимое функции sendajax другим кодом (без отправки ajax) и обнаружил, что проблема не в ajax. Он по-прежнему входит в функцию дважды.