Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ XML, AJAX _ Ajax/Php paginacja, generowanie URL

Napisany przez: wlodek_789 15.05.2020, 13:29:11

Mam problem z generowaniem url po stronie ajax, rozwiązałem go częściowo przez dodanie history.pushState.
Po tym działa historia w przeglądarce, pushState generuje url -> selected=2,3 itd.
Ale pojawił się taki problem po wejściu w dany product wraca nie np do strony 5 ale ładuje wszystko od początku.
Nie wiem jak to rozwiązać.
Chciałbym zrobić tak np jestem na stronie 5 w paginacji kiedy wracam to jestem na stronie 5 a nie 1.
Czy jest to w ogóle możliwe?, bo normalnie w php to jest oczywiste, a tu nie.

Strona testowa http://mantykora.cleoni.com:8080/2020_pagination_1/public/

Kod
$(document).ready(function(){  
      load_data(1);      
      function load_data(page)  
      {             
        $('#load_data').html('<div id="status" style="" ></div>');
        $.ajax({
                url:"pagination2.php",  
                method:"POST",
                data:{page:page},  
                success:function(data){  
                     $('#load_data').html(data);
                }
           });
      }  

      $(document).on('click', '.pagination_link', function(event)
        {
            event.preventDefault();
            var page = $(this).attr("id");
            load_data(page);
            history.pushState({page}, `Selected: ${page}`, `./selected=${page}`)
            return event.preventDefault();
      });
             window.addEventListener('popstate', e => {
            var page = $(this).attr("id");
            load_data(e.state.page);
            console.log('popstate error!');
    });
    
        history.replaceState({page: null}, 'Default state', './');
});

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)