Ajaxové stránkovanie vyhľadávania – nezobrazí snippet (div) na last page
- Aris
- Člen | 48
Absolútne neviem prísť na chybu. Mám spravené ajaxové stránkovanie + typeahead live search. HandleAjaxSearch a HandleRedrawContent prebehnú v poriadku, snippety vždy prídu zo serveru so správnymi dátami. Okrem poslednej strany beží všetko v poriadku. Pri poslednej prekreslí bez problémov prvý snippet s dátami, druhá so stránkami nie… Ako je možné, že starý snippet so stránkami je odstránený a nový ignorovaný? Ďakujem.
public function handleRedrawContent($page=1)
{
$httpRequest = $this->getHttpRequest();
if($httpRequest->isAjax())
{
$lastPage=0;
$query = $httpRequest->getPost('query');
$response = $this->potravinyModel->ajaxSearchAllData($query);
$row_count = $response->count('*');
$ajax_array=[];
unset($_GET['page']);
$page =1;
foreach($response->page($page,12,$lastPage) as $row)
{
if($row_count >1)
{
$ajax_array[]=$row->toArray();
}
else if($row_count ==1)
{
$ajax_array[]=$row->toArray();
}
}
$this->template->potraviny= $ajax_array;
$this->template->page = $page;
$this->template->lastPage = $lastPage;
$this->redrawControl('ajaxPagination');
$this->redrawControl('ajaxSearchResults');
}
}
$(function () {
$.nette.init();
function load_data(query, typehead_search = 'yes')
{
$.ajax({
cache: false,
complete: function () {
$('.preloader').hide();
},
off: ['loading'],
url:{{link redrawContent!}},
method:"POST",
data:{query:query, typehead_search:typehead_search},
success:function(payload)
{
$('#snippet--ajaxSearchResults').html(payload.snippets['snippet--ajaxSearchResults']);
$('#snippet--ajaxPagination').html(payload.snippets['snippet--ajaxPagination']);
}
});
}
});
<div class="pagination col-md-12" n:snippet="ajaxPagination" >
<div class="text-center">
<button class="ajax get-more-btn" id="">get more</button>
<p>{$page *12}</p>
</div>
<div class="text-center">
<ul class="pagination pagination-split">
{if $page > 1}
<li>
<a n:href="default, 1">
<i class="fa fa-angle-double-left"></i>
</a>
</li>
<li>
<a n:href="default, $page-1">
<i class="fa fa-angle-left"></i>
</a>
</li>
{/if}
{for $i=$page-2; $i<$page; $i++}
{if $i>0}
<li class="">
<a n:href="default, $i">{$i}</a>
</li>
{/if}
{/for}
<li class="active">
<a n:href="default, $page">{$page}</a>
</li>
{for $i=$page; $i<=$page+2; $i++}
{if $i >$page && $i <= $lastPage}
<li class="">
<a n:href="default, $i">{$i}</a>
</li>
{/if}
{/for}
{if $page < $lastPage}
<li>
<a n:href="default, $page+1">
<i class="fa fa-angle-right"></i>
</a>
</li>
<li>
<a n:href="default, $lastPage">
<i class="fa fa-angle-double-right"></i>
</a>
</li>
{/if}
</ul>
</div>
</div>