====== Динамическая подгрузка элементов ====== При нажатии на кнопку "подгрузить еще" происходит подгрузка элементов ИС. Скрипт обращается по адресу (пример ниже) и добавляет ответ в конец контейнера ("#portfolio"). Для реализации: - Добавляем код в настройках ТДС /** * При аякс загрузке подменяем макет на пустой * * @author Shcherbakov Aleksandr, KAD Systems (©) 2015 * @date 27-07-2015 * Начало >> */ if(Core_Array::getGet('ajax')) { Core_Page::instance()->template( Core_Entity::factory('Template', 30) // пустой макет ); if(Core_Array::getGet('ajax') == 'items') { $Informationsystem_Controller_Show ->addEntity( Core::factory('Core_Xml_Entity')->name('ajax')->value(1) ); } } /** * << Конец * @author Shcherbakov Aleksandr, KAD Systems (©) 2015 * @date 27-07-2015 */ - Редактируем код XSL шаблона вывода списка элементов ИС
- Подключаем js обработчик /** * кнопка "показать еще" * * @author Shcherbakov Aleksandr, KAD Systems (©) 2015 * @date 27-07-2015 * Начало >> */ $(".more_posts a").live('click', function(e){ container = "#portfolio"; // контейнер для элементов page = parseInt($(container).attr('data-page')); // текущая страница pages = parseInt($(container).attr('data-pages')); // общее число страниц if(page >= pages) { return false; } e.preventDefault(); $.loadingScreen('show'); jQuery.ajax({ type: 'GET', url: 'page-' + (page + 1) + '/', data: 'ajax=items', success: function(content){ $(container).append(content); $(container).attr('data-page', ++page); if(page >= pages) { // скрываем кнопку показать еще $(".more_posts").css("display", "none"); } $.loadingScreen('hide'); } }); }); /** * << Конец * @author Shcherbakov Aleksandr, KAD Systems (©) 2015 * @date 27-07-2015 */