2010-07-01 3 views
1

Мне недавно сказали использовать панели для динамической загрузки контента в разные разделы с помощью Drupal. Тем не менее, я просто понял, что есть простой способ сделать это, я добавил этот код JQuery все пункты меню:Drupal: Загрузка содержимого AJAX в Drupal

$('.menu a').click(function(){ 
    $('#content').load($(this).attr('href') + " #content"); 
    return false; //to avoid refresh 
}); 

Таким образом, я могу легко обновить anyblock от какой-либо ссылки без использовать панели.

Этот подход хороший? Вы также думаете, что панели не нужны, чтобы просто загружать html в разделы сайта динамически?

благодаря

ответ

2

панели основного использования, не загружается контент без загрузки страниц. В основном используется

  • для создания различных макетов страниц, которые зависят от определенных критериев, которые вы можете установить с помощью кода или в ИИ.
  • Укажите содержание страницы, узнайте, какой контент просматривается, и привязывая к другому контенту вместе.

Ваш текущий скрипт будет работать, но он немного груб в текущей форме. Fx, что произойдет, если пользователь несколько раз щелкнет. Если вы хотите динамически обновлять свой контент, вы должны изменять только те части, которые необходимо изменить, вместо загрузки/изменения всей страницы. Тогда вы можете просто загрузить новую страницу. Я думаю, это то, где Panels могут вам помочь, но я не пробовал использовать такие Панели.

+0

спасибо, так что вопрос здесь: как я могу * только * загрузить содержимое узла вместо обычной страницы? Какая связь с узлом? (конечно, без использования панелей) спасибо – aneuryzm

+0

@Patrick: ATM, нет способа просто загрузить содержимое узла, но это должно быть довольно просто сделать модуль, который это делает. Что делает это немного сложнее, так это то, что не все страницы представляют собой виды узлов. – googletorp

+0

Думаю, я решил. Я передаю параметр «onlyNode = true» вместе со ссылкой, и я обновил свой шаблон, чтобы игнорировать содержимое страницы, если эта переменная истинна. Таким образом, выбор выполняется на стороне сервера, и я не загружаю всю страницу. – aneuryzm

Смежные вопросы