xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Как создать свою AJAX команду

Опубликовано в

Если вам не хватает встроенных ajax команд, то всегда можно создать свою. Пример ниже демонстрирует создание команды change_title, которая изменяет заголовок текущего окна.

Javascript код:

(function($) {
  Drupal.ajax.prototype.commands.change_title = function(ajax, response, status) {
    document.title = response.title;
  }
}(jQuery));

Пример PHP кода:

function mymodule_ajax_callback() {
  return array(
    '#type' => 'ajax',
    '#commands' => array(
      array(
        'command' => 'change_title',
        'title' => 'Hello World',
      ),
    ),
  );
}
Написанное актуально для Drupal 7
Похожие записи

Комментарии RSS

Скажите, пож., можно ли по одной команде ajax_command_my_command выполнить вызов двух различных функций последовательно , т.е.
Drupal.ajax.prototype.commands.my_command = function_name1;
Drupal.ajax.prototype.commands.my_command = function_name2;

Первый вызов находится в core файле, второй - в моем модуле.

Drupal.ajax.prototype.commands.my_command = function() {
  function_name1();
  function_name2();
}

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании