//JS $('body').delegate('.modern-page-navigation a','click',function(){ if($(this).hasClass('modern-page-current')) return false; var val = $(this).attr('href'); val = val.split('?'); load_knowledge(val[1]); return false; }); function load_knowledge(get){ var val = $('#form-filter__name').val(); var count = $('#form-filter__num').val(); var section = $('#form-filter__section').val(); var tag = $('#form-filter__tag').val(); var data = {}; data['val'] = val; data['count'] = count; data['section'] = section; data['tag'] = tag; $.ajax({ url: '/apps/suz/ajax.php', type: 'POST', dataType: 'html', data: { 'ajax': 'load_knowledge', 'data': data, 'url': location.pathname, 'get': get }, success: function(response){ console.info(response); $('.knowledge_block_list').html(response); } }); } //PHP if(strlen($_POST['get'])>0) $get = explode("&",$_POST['get']); foreach($get as $getI){ $getI = explode("=",$getI); $_GET[$getI[0]] = $getI[1]; } require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"); if(!CModule::IncludeModule('iblock')) die('error'); CPageOption::SetOptionString("main", "nav_page_in_session", "N"); require_once($_SERVER['DOCUMENT_ROOT'].'/apps/suz/prolog.php'); getlist...
Пагинация на ajax bitrix
Для того, чтобы реализовать пагинацию на аяксе, достаточно передавать параметры из ссылок, которые генерируются с помощью $pag = $res->GetPageNavStringEx($navComponentObject, "", 'modern'); в аякс. В аяксе уже обрабатываем строку, передавая параметры в $_GET ДО вызова пролога, чтобы они были съедены гетлистом. А также делательно установить параметр nav_page_in_session: CPageOption::SetOptionString("main", "nav_page_in_session", "N"); . Дальше GetList сам все сделает.