Maison  >  Article  >  interface Web  >  Comment utiliser JQuery.dataTables pour implémenter le plug-in de table afin d'ajouter la fonction de passage à une page spécifiée

Comment utiliser JQuery.dataTables pour implémenter le plug-in de table afin d'ajouter la fonction de passage à une page spécifiée

巴扎黑
巴扎黑original
2017-06-22 17:43:411914parcourir

Cet article présente principalement le plug-in de table JQuery.dataTables pour ajouter une solution pour accéder à une page spécifiée. Il est très bon et a une valeur de référence. Les amis dans le besoin peuvent s'y référer

1. Solution

1. Ajouter une barre d'outils personnalisée et intégrer une zone de texte


 "dom": &#39;l<"toolbar">frtip&#39;, //自定义工具栏 
//设置工具栏内容 
//l - length changing input control 
//f - filtering input 
//t - The table! 
//i - Table information summary 
//p - pagination control 
//r - processing display element 
[javascript] view plain copy print?
$("p.toolbar").html(&#39; <b style="color:red">跳转第</b><input id="searchNumber"/><b style="color:red;">页</b>&#39;);

2. Écoutez l'événement change de la zone de texte et exécutez la méthode de page de transfert du plug-in


//调转到指定页面索引 ,注意大小写 
var oTable = $(&#39;#example1&#39;).dataTable(); 
oTable.fnPageChange(page);

3. Une fois le plug-in dessiné avec succès, la valeur de la zone de texte liée


//绘制的时候触发,绑定文本框的值 
table.on(&#39;draw.dt&#39;, function (e, settings, data) { 
  var info = table.page.info(); 
  //此处的page为0开始计算 
  console.info(&#39;Showing page: &#39; + info.page + &#39; of &#39; + info.pages); 
 
  $(&#39;#searchNumber&#39;).val(info.page + 1); 
});

2. Un exemple de code complet


<table id="example1" class="table table-hover table-striped"> 
  <thead> 
    <tr> 
      <th>编号</th> 
      <th>姓名</th> 
      <th>性别</th> 
      <th>生日</th> 
      <th>班级</th> 
    </tr> 
  </thead> 
</table> 
$(function () { 
  //注意方法名为DataTable 
  var table = $(&#39;#example1&#39;).DataTable({ 
    "dom": &#39;l<"toolbar">frtip&#39;, //自定义工具栏 
    "pagingType": "full_numbers", 
    lengthMenu: [3, 5, 10], 
    processing: true,//是否使用进度条 
    serverSide: true,//是否启用数据库加载 
    ajax: { 
      url: &#39;/tableone/getlist&#39;, 
      type: &#39;post&#39;, 
      data: function (d) { 
        d.name = &#39;张三&#39;; 
        /* 
        * 自定义aja参数 
        * 特别说明,此处可以重写控件的默认参数,比如分页参数 
        */ 
        // d.start = 0; 
        //console.info(d); 
        //var page = $(&#39;#searchNumber&#39;).val(); 
        //page = parseInt(page) || 1; 
        //d.start = (page - 1) * d.length; 
      } 
    }, 
    //指定列绑定的字段 
    columns: [ 
      { data: &#39;sno&#39; }, 
      { data: &#39;sname&#39; }, 
      { data: &#39;ssex&#39; }, 
      { data: &#39;sbirthday&#39; }, 
      { data: &#39;class&#39; } 
    ], 
    order: [ 
      [3, &#39;desc&#39;] 
    ] 
  }); 
  $("p.toolbar").html(&#39; <b style="color:red">跳转第</b><input id="searchNumber"/><b style="color:red;">页</b>&#39;); 
  //绑定分页事件----在切换分页的时候触发 
  //table.on(&#39;page.dt&#39;, function () { 
  //  var info = table.page.info(); 
  //  console.info(&#39;Showing page: &#39; + info.page + &#39; of &#39; + info.pages); 
  //}); 
  //绘制的时候触发,绑定文本框的值 
  table.on(&#39;draw.dt&#39;, function (e, settings, data) { 
    var info = table.page.info(); 
    //此处的page为0开始计算 
    console.info(&#39;Showing page: &#39; + info.page + &#39; of &#39; + info.pages); 
    $(&#39;#searchNumber&#39;).val(info.page + 1); 
  }); 
  //监听文本框更改 
  $(&#39;#searchNumber&#39;).change(function () { 
    var page = $(this).val(); 
    page = parseInt(page) || 1; 
    page = page - 1; 
    //调转到指定页面索引 ,注意大小写 
    var oTable = $(&#39;#example1&#39;).dataTable(); 
    oTable.fnPageChange(page); 
  }); 
});
s'affiche comme suit :

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