Maison  >  Article  >  développement back-end  >  Utilisation du framework thinkPHP5 pour implémenter une analyse de la fonction de pagination basée sur Ajax

Utilisation du framework thinkPHP5 pour implémenter une analyse de la fonction de pagination basée sur Ajax

不言
不言original
2018-06-12 16:30:303146parcourir

Cet article présente principalement le framework thinkPHP5 pour implémenter la fonction de pagination basée sur ajax. Il analyse les étapes spécifiques, le code d'implémentation et les méthodes de fonctionnement associées de l'opération de pagination ajax sur le framework thinkPHP5 sous forme d'exemples auxquels les amis dans le besoin peuvent se référer. it

L'exemple de cet article décrit comment le framework thinkPHP5 implémente la fonction de pagination basée sur ajax. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

L'onglet sur une page récente implique une pagination ajax, j'ai donc étudié comment utiliser la pagination ajax dans le tp5

Tout d'abord, prenons un aperçu de la pagination dans l'introduction de la fonction tp5

参数 描述
list_rows 每页数量
page 当前页
path url路径
query url额外参数
fragment url锚点
var_page 分页变量
type 分页类名

$caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);

Notre requête de pagination est donc écrite comme indiqué dans le code ci-dessus.

De cette façon, chaque page affichée sur la page devient AjaxPage('当前分页数,自动变化')

Ensuite, nous pouvons écrire une fonction correspondante dans la page AjaxPage(page) pour compléter Le. La requête de requête ajax correspondante renvoie à la vue spécifiée

La méthode du contrôleur de requête ajax est la suivante

public function all()
{
    $caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);
    return view('getall',['res'=>$caseDetails]);
}

Si l'onglet a un identifiant pour interroger à nouveau la catégorie actuelle, vous pouvez utiliser ce qui suit

public function getAjax($id,$page=1)
{
    $res = CaseDetails::where(['category'=>$id])->paginate(9,false,['page'=>$page,'path'=>"javascript:AjaxDetailsPage({$id},[PAGE]);"]);
    return view('',['res'=>$res]);
}

Le code js est le suivant :

function AjaxPage(page){
  $.get('/index/successcase/getAll',{ page:page },function (data) {
    $('.little-content').html(data);
  })
}
$('.on').hover(function(){
  $.get('/index/successcase/all',function (data) {
    $('.little-content').html(data);
  })
});
$('.title-id').hover(function(){
  var id = $(this).attr('title');
  $.get('/index/successcase/getajax',{ 'id':id },function(data){
    $('.little-content').html(data);
  });
});
function AjaxDetailsPage(id,page){
  $.get('/index/successcase/getAjax',{ id:id,page:page },function (data) {
    $('.little-content').html(data);
  })
}

vue de portée ajax

{volist name="res" id="casedetails"}
<li class="little-block">
  <img src="{$casedetails.pic}"/>
  <p class="mb-text">
    <p class="text">
      <h1>{$casedetails.name}</h1>
      <p class="p3">{$casedetails.caseCategory.name}</p>
      <a href="#" rel="external nofollow" >VIEW MORE</a>
    </p>
  </p>
</li>
{/volist}
<br>
{$res->render()}

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Méthode backend PHP pour implémenter le code de génération d'indice de pagination pour les pages Web

À propos de l'amarrage du framework thinkPHP avec Alipay Analyse du problème de rappel de l'interface de paiement instantané

Analyse de la classe de pagination d'événements js customPage.class.php ajoutée au framework thinkPHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn