Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.01.2014, 19:02
Новичок на форуме
Отправить личное сообщение для hhred Посмотреть профиль Найти все сообщения от hhred
 
Регистрация: 01.01.2014
Сообщений: 1

Ajax запрос и переход по ссылке.
Здравствуйте. Возникла проблема с выполнением AJAX запроса. Проблема заключается в следующем: существует ссылка
<a onclick="событие" href="тут_ссылка">...</a>
при нажатии на которую выполняется Ajax запрос. Сохраняется информация и пользователе и дате перехода (короче говоря не важно). Проблема в том, что при нажатии на ссылку не всегда срабатывает событие. Я думаю что это и за того, что браузер не ждет, пока выполнится запрос и сразу переходит на другую страницу. Подскажите, как притормозить переход по ссылке? что бы сначала выполнилось событие, а после этого выполнился переход по ссылке. Заранее спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 01.01.2014, 20:02
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,252

Сообщение от hhred
как притормозить переход по ссылке? что бы сначала выполнилось событие, а после этого выполнился переход по ссылке
Как вариант...
- не писать так
Сообщение от hhred
href="тут_ссылка"
- сам переход делать в калбек функции Ajax запроса
Ответить с цитированием
  #3 (permalink)  
Старый 03.01.2014, 16:35
Кандидат Javascript-наук
Отправить личное сообщение для Brutus Посмотреть профиль Найти все сообщения от Brutus
 
Регистрация: 24.11.2013
Сообщений: 127

Эта "весчь" является некоторой проблемой т.к. window.open вызванный не напрямую считается всплывающим окном так что лучше вывести перед пользователем окошко с просьбой нажать на ссылку

Вот хром не позволяет открыть окно в таком ПРИМЕРЕ!!!
РУГАЕТСЯ!!
<a onclick='ajax ();' href='javascript:'>Click</a>
    <script>
    function ajax () {  
      var xmlhttp = new XMLHttpRequest();
      xmlhttp.open('GET', 'http://bla-bla-bu-bu.ru', true);
      xmlhttp.onreadystatechange = function() 
      {
         if (xmlhttp.readyState == 4) 
         {
           if(xmlhttp.status == 200) 
           {
             window.open("http://javascript.ru",'_blank');
             /*......*/
           }
         }
      };
      xmlhttp.send(null);
      
    }  
    </script>


ну может есть и хакерский спрособ
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax запрос на ютуб masterdle Элементы интерфейса 2 16.07.2013 15:32
AJAX запрос в Internet Explorer срабатывает через раз nikolayseo jQuery 5 13.11.2012 00:13
Как можно кешировать Ajax запрос ? saturn AJAX и COMET 5 27.10.2012 14:48
Синхронный запрос данных по AJAX Shasoft AJAX и COMET 2 03.03.2009 14:07
ajax запрос с подгружемным js HelpeR AJAX и COMET 1 27.10.2008 12:44