Нужно добавить функцию - PullRequest
       2

Нужно добавить функцию

0 голосов
/ 13 декабря 2010

Я хотел бы добавить простую функциональность на мои страницы, где пользователь увидит кнопку «Follow» и, щелкнув по ней, будет создана запись в БД (userID и pageID).Полагаю, я обработаю запрос на бэкэнде.Я думаю, что мне нужно сделать это в AJAX, но я не так много сделал с AJAX.Я также думал, что изменить статус кнопки с «СЛЕДОВАТЬ» на «СЛЕДУЮЩИЙ» (или что-то подобное) я мог бы с помощью jQuery, с каким-то переключателем, пока запрос обрабатывается в фоновом режиме.

Я нахожусь направильный путь с этим?

Ответы [ 3 ]

2 голосов
/ 13 декабря 2010

Вы на правильном пути.

Я создал пример, в котором используется кнопка типа <input type="image" class="follow">. Когда пользователь нажимает на него, он отправляет запрос на сервер (url). В случае успеха обновляет изображение кнопки.

  $('input[type=image].follow').click(function() {
    var button = $(this);
    var current_img = $(button).attr('src');
    var current_alt = $(button).attr('alt');

    $(button).attr('src', '/style/icons/ajax-loader.gif');
    $(button).attr('alt', 'Requesting data from the server...');

    $.ajax({
      url: url of script the processes stuff (like db update),
      type: 'POST',
      data: {},
      dataType: "json",
      error: function(req, resulttype, exc)
      {
        $(button).attr('src', '/style/error.png');
        $(button).attr('alt', 'Error while updating!');
        window.setTimeout(function() {
          $(button).attr('src', current_img);
          $(button).attr('alt', current_alt);
        }, 3000);
      },
      success: function(data)
      {
        $(button).attr('src', '/style/followed.png');
        $(button).attr('alt', 'Followed');
      }
    });

    return false;
  });

Выше приведен пример кода. Измените это по своему желанию. Веселитесь вместе с ним.

1 голос
/ 13 декабря 2010

AJAX прав, jQuery облегчает работу с Ajax.

//Post with jQuery (call test.php):
$.post('test.php', function(data) {
  //Do something with result data
});
0 голосов
/ 13 декабря 2010

Звучит так, будто вы на правильном пути. Если вы работаете с небольшим приложением, то использовать запрос AJAX и создать свою запись было бы проще всего, используя сервлет Java и добавив, например, некоторый код JDBC в ваш метод doGet или doPost для выполнения операций базы данных. В то же время ваш метод onSuccess для вашего запроса AJAX может вызвать код jQuery, необходимый для обновления вашей кнопки. Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...