Задать вопрос
@bubihart

Почему возникают 2 Ajax запроса вместо одного?

У меня есть сайт с навигацей. При клике на ссылку на стороне JS формируется Ajax запрос который возвращает содержимое PHP файла в div. На сайте также есть форма для добавления коментария в гостевую книгу сайта. Гостевая книга выводится c помощью плагина JQuery Datatable.

Суть проблемы:

После того как я загрузил перешел по ссылке в меню на гостевую книгу и загрузил в div с помощью Ajax-а таблицу(JQuery datatable) с коментариями, и добавляю новый коментарий, то формируются 2 Ajax запроса в MySql вместо одного. Если же я нахожуся на главной странице или любой другой кроме гостевой книги и добавляю новый коментарий то формируется 1 Ajax запрос как и должно быть.

Исходники:

Скрипт который отвечает за инициализацию JQuery Datatable:
$('#main_table').dataTable
    ({
      "bProcessing": true,
      "bServerSide": true,
      "bRetrieve": true,
      "sAjaxSource": "jquery_datatables_server_connect.php"
    });


Скрипт который формирует Ajax запрос и выводит гостевую книгу в div:
$('#guest_book_link').click(function()
    {
      $.ajax
      ({
       url: "guest_book.php",
       method: 'post',
       cache: false,
       success: function(html)
       {
         $("#content").html(html);
       }
      });
      return false;
    });


Спасибо заранее за любую помощь =)
  • Вопрос задан
  • 501 просмотр
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov
Web developer
Вероятно, дважды (первый раз при загрузке страницы, второй - при подгрузке аяксом таблицы) вызывается код:
$('#guest_book_link').click(function()

Соответственно, и обработчик дважды вызывается при клике.

Научитесь пользоваться js-дебаггером. Например, https://learn.javascript.ru/debugging-chrome
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы