Я загружаю данные при загрузке страницы, которая имеет нумерацию страниц, и она работает правильно, затем мне нужно искать на той же странице, я ищу значение, которое дает результат правильно, и ссылки на страницы нумерации тоже верны, и когда я нажимаю на кнопку Далеечтобы просмотреть вторую запись результатов поиска, ссылки на страницы разбиваются, похоже, что они снова ищут и выводят все результаты, а не только те, которые мне нужны, при следующем нажатии.
Пожалуйста, просмотрите скриншоты
1. https://prnt.sc/nduf3b
2. https://prnt.sc/nduitr 3. https://prnt.sc/ndujri
Функция контроллера
public function sharesShow(Request $request)
{
$data = array();
$data = Share::paginate(1);
$all = '';
if ($request->ajax()) {
$all = $request->all();
if(isset($all['data'])){
parse_str($all['data'], $getData);
$categoryId = $getData['categoryId'];
$shareName = $getData['shareName'];
$data = Share::where('categoryId', $categoryId)->paginate(1);
}
return view('shares.showAjax')->with('data',$data);
}
return view('shares.show')->with('data',$data);
}
JS
<script type="text/javascript">
$(window).on('hashchange', function() {
if (window.location.hash) {
var page = window.location.hash.replace('#', '');
if (page == Number.NaN || page <= 0) {
return false;
}else{
getData(page);
}
}
});
$(document).ready(function()
{
$(document).on('click', '.pagination a',function(e)
{
e.preventDefault();
$('li').removeClass('active');
$(this).parent('li').addClass('active');
var myurl = $(this).attr('href');
var page=$(this).attr('href').split('page=')[1];
console.log(page);
// return false;
getData(page);
});
// });
function getData(page){
$.ajax({
url: '?page=' + page,
type: "get",
datatype: "html",
success: function(data){
$("#tag_container").empty().html(data);
location.hash = page;
}
});
}
});
$(document).ready(function(){
$('#searchBtn').click(function(e){
e.preventDefault();
var url = $("#searchForm").attr('action');
var data = $("#searchForm").serialize();
$.ajax({
url: url,
method: 'get',
data: {
"data": data,
"_token": "{{ csrf_token() }}"
},
dataType: "html",
success: function(result){
$("#tag_container").html("");
console.log(result);
$("#tag_container").html(result);
}
});
});
});
</script>