Как автоматически обновить div в Drupal - PullRequest
1 голос
/ 15 ноября 2011

Я использую Drupal.

Я пытаюсь обновить поле каждые X секунд без обновления всей страницы.

Я использую такой код:

 <script>
 var refreshId = setInterval(function()
 {
      $('#responsecontainer').fadeOut("slow").load('response.php').fadeIn("slow");
 }, 10000);
 </script>

Но response.php должно быть поле, которое я обновляю?

Что это в Drupal? что я использую вместо response.php?

Ответы [ 3 ]

1 голос
/ 15 ноября 2011

Прежде всего, вы должны создать модуль для этого. Вы должны определить в своем модуле новый пункт меню. Например:

function yourmodule_menu() {
  $items = array();
  $items["ajax/get-field-value"] = array(
    "title" => "Some title",
    "page callback" => "yourmodule_page_callback",
    "access callback" => true,
    "type" => MENU_CALLBACK
  );
  return $items;
}

тогда ваша функция вернет фактическое значение этого поля:

function yourmodule_page_callback() {
  // get the field value
  print $field_value; exit;
}

, тогда в вашем коде JavaScript вы должны загрузить страницу /ajax/get-field-value вместо response.php

0 голосов
/ 16 ноября 2011

Вы также можете захотеть использовать node.js . Для этого есть модуль (доступен как для Drupal 6, так и для 7): модуль nodejs .

Теперь это новый горячий способ поддерживать недорогое (при загрузке сервера) соединение с клиентом и «выдвигать» обновления данных на страницу, чтобы вы могли иметь «биржевую сводку» или другое обновление такой информации на стороне клиента.

Чтобы узнать больше, вы можете посмотреть хорошую сессию DrupalCon London на тему интеграции Node.js с сайтом Drupal.

0 голосов
/ 15 ноября 2011

Мариус Илие предлагает правильное направление.

Вы можете перейти по ссылке ниже для более подробной информации о том, как создать собственный модуль для использования javascript / jquery. Смотрите принятый ответ.

Проблема местоположения скрипта php jquery модуля drupal

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