Показать сообщение отдельно
  #1 (permalink)  
Старый 18.01.2017, 00:45
Профессор
Отправить личное сообщение для smart-create Посмотреть профиль Найти все сообщения от smart-create
 
Регистрация: 25.10.2016
Сообщений: 157

Переключение страниц без обновления страницы
Добрый вечер, только что закончил делать вывод новостей из БД с постраничной разбивкой. Но не могу теперь разобраться как сделать переключение страниц без обновления страницы, делаю следующим образом:
$(".pagination a").click(function(e){ // клик по номеру страницы
	e.preventDefault(); // отменяем обновление
	var url = $(this).attr('href').split('/')[5]; // определяем последний параметр ссылки который был указан в хрефе нажатой "a"
	$('#content').load('feeds/page/'+url+' #content'); // подставляем полученную переменную в ссылку на страницу с блоком которые и нужно обновить на текущей странице
});


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

вот разметка всего блока:
<div id="content">
	<?php foreach ($post_array as $feeds):?>
		<div class="row feed">
			<div class="col-md-12">
				<div class="info-block">
					<div class="info-text">
						<a href="/feeds/news/<?=$feeds['key_n']?>" target="_blank">
							<div class="news-title-container">
								<h3><span class="color-text"><?=mb_substr($feeds['title'],0,50,'UTF-8')?>...</span></h3>
							</div>
							<div class="news-txt-container">
								<p><?=mb_substr($feeds['txt'],0,300,'UTF-8')?>...</p>
							</div>
							<br>
							<?php if ($feeds['img'] == "") {}else{?>
								<a class="fancyimage" rel="group1" href="/library/img/news/<?=$feeds['img']?>"> 
									<img class="img-news" src="/library/img/news/<?=$feeds['img']?>" alt="Новости превью" />
								</a> 
							<?php }?>
							<span class="mow_news" style="pointer-events:none;">ОТ: <?=$feeds['date']?></span><br>
							<a href="/feeds/news/<?=$feeds['key_n']?>" target="_blank"><span class="mow_news">ЧИТАТЬ ДАЛЕЕ</span></a>
						</a>
					</div>
				</div>
			</div>
		</div>
		<br>
		<br>
	<?php endforeach?>
</div>
<?php echo $this->pagination->create_links();?> // здесь выводиться разметка пейджера


Вот обработчик пейджера на сервере:
//КОНТРОЛЛЕР
function page() {
	$this->load->library('pagination');

	$config['base_url'] = base_url().'feeds/page/';
	$config['total_rows'] = $this->db->count_all('feeds');
	$config['per_page'] = '2'; 
	$config['full_tag_open'] = '<p class="pagination">';
	$config['full_tag_close'] = '</p>';
	$config['first_link'] = '<span class="first_last">ПЕРВАЯ</span>';
	$config['last_link'] = '<span class="first_last">ПОСЛЕДНЯЯ</span>';
	$config['next_link'] = '<i class="fa fa-caret-square-o-right" aria-hidden="true"></i>';
	$config['prev_link'] = '<i class="fa fa-caret-square-o-left" aria-hidden="true"></i>';

	$this->pagination->initialize($config); 
		
	$this->data['post_array'] = $this->main_model->get_feeds($config['per_page'], $this->uri->segment(3));

	$this->load->view('pages/feeds/index', $this->data);
	$this->load->view('pages/rooms/index');
}

// МОДЕЛЬ
function get_feeds($num, $offset){
	$this->db->order_by("id", "desc");
	$query = $this->db->get('feeds',$num, $offset);
	return $query->result_array();
}


И на всякий случай, ссылка на страницу о которой идет речь:
ссылка

У меня есть предположение что выбранный мною метод .load() - это не самое лучшее решение, но другого я увы не знаю, прошу помочь. Буду благодарен за любую помощь
Ответить с цитированием